in apps/samplecode/education/rosterapi/EducationAccelerator.WebApi/EducationAccelerator.WebApi/Migrations/ApiContextModelSnapshot.cs [12:562]
protected override void BuildModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("ProductVersion", "2.0.0-rtm-26452");
modelBuilder.Entity("OneRosterProviderDemo.Models.AcademicSession", b =>
{
b.Property<string>("Id")
.ValueGeneratedOnAdd();
b.Property<DateTime>("CreatedAt");
b.Property<DateTime>("EndDate");
b.Property<string>("Metadata");
b.Property<string>("ParentAcademicSessionId");
b.Property<string>("SchoolYear")
.IsRequired();
b.Property<DateTime>("StartDate");
b.Property<int>("Status");
b.Property<string>("Title")
.IsRequired();
b.Property<int>("Type");
b.Property<DateTime>("UpdatedAt");
b.HasKey("Id");
b.HasIndex("ParentAcademicSessionId");
b.ToTable("AcademicSessions");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.Course", b =>
{
b.Property<string>("Id")
.ValueGeneratedOnAdd();
b.Property<string>("CourseCode");
b.Property<DateTime>("CreatedAt");
b.Property<string>("Metadata");
b.Property<string>("OrgId")
.IsRequired();
b.Property<string>("SchoolYearAcademicSessionId");
b.Property<int>("Status");
b.Property<string>("Title")
.IsRequired();
b.Property<DateTime>("UpdatedAt");
b.Property<string>("_grades");
b.Property<string>("_subjectCodes");
b.HasKey("Id");
b.HasIndex("OrgId");
b.HasIndex("SchoolYearAcademicSessionId");
b.ToTable("Courses");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.Enrollment", b =>
{
b.Property<string>("Id")
.ValueGeneratedOnAdd();
b.Property<DateTime>("BeginDate");
b.Property<DateTime>("CreatedAt");
b.Property<DateTime>("EndDate");
b.Property<string>("IMSClassId")
.IsRequired();
b.Property<string>("Metadata");
b.Property<bool?>("Primary");
b.Property<int>("Role");
b.Property<string>("SchoolOrgId")
.IsRequired();
b.Property<int>("Status");
b.Property<DateTime>("UpdatedAt");
b.Property<string>("UserId")
.IsRequired();
b.HasKey("Id");
b.HasIndex("IMSClassId");
b.HasIndex("SchoolOrgId");
b.HasIndex("UserId");
b.ToTable("Enrollments");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.IMSClass", b =>
{
b.Property<string>("Id")
.ValueGeneratedOnAdd();
b.Property<string>("IMSClassCode");
b.Property<int>("IMSClassType");
b.Property<string>("CourseId")
.IsRequired();
b.Property<DateTime>("CreatedAt");
b.Property<string>("Location");
b.Property<string>("Metadata");
b.Property<string>("SchoolOrgId")
.IsRequired();
b.Property<int>("Status");
b.Property<string>("Title")
.IsRequired();
b.Property<DateTime>("UpdatedAt");
b.Property<string>("_grades");
b.Property<string>("_periods");
b.Property<string>("_subjectCodes");
b.HasKey("Id");
b.HasIndex("CourseId");
b.HasIndex("SchoolOrgId");
b.ToTable("IMSClasses");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.IMSClassAcademicSession", b =>
{
b.Property<string>("Id")
.ValueGeneratedOnAdd();
b.Property<string>("AcademicSessionId");
b.Property<DateTime>("CreatedAt");
b.Property<string>("IMSClassId");
b.Property<string>("Metadata");
b.Property<int>("Status");
b.Property<DateTime>("UpdatedAt");
b.HasKey("Id");
b.HasIndex("AcademicSessionId");
b.HasIndex("IMSClassId");
b.ToTable("IMSClassAcademicSessions");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.LineItem", b =>
{
b.Property<string>("Id")
.ValueGeneratedOnAdd();
b.Property<string>("AcademicSessionId")
.IsRequired();
b.Property<DateTime>("AssignDate");
b.Property<DateTime>("CreatedAt");
b.Property<string>("Description");
b.Property<DateTime>("DueDate");
b.Property<string>("IMSClassId")
.IsRequired();
b.Property<string>("LineItemCategoryId")
.IsRequired();
b.Property<string>("Metadata");
b.Property<float>("ResultValueMax");
b.Property<float>("ResultValueMin");
b.Property<int>("Status");
b.Property<string>("Title")
.IsRequired();
b.Property<DateTime>("UpdatedAt");
b.HasKey("Id");
b.HasIndex("AcademicSessionId");
b.HasIndex("IMSClassId");
b.HasIndex("LineItemCategoryId");
b.ToTable("LineItems");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.LineItemCategory", b =>
{
b.Property<string>("Id")
.ValueGeneratedOnAdd();
b.Property<DateTime>("CreatedAt");
b.Property<string>("Metadata");
b.Property<int>("Status");
b.Property<string>("Title")
.IsRequired();
b.Property<DateTime>("UpdatedAt");
b.HasKey("Id");
b.ToTable("LineItemCategories");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.OauthNonce", b =>
{
b.Property<string>("Value")
.ValueGeneratedOnAdd();
b.Property<DateTime>("UsedAt");
b.HasKey("Value");
b.ToTable("OauthNonces");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.Org", b =>
{
b.Property<string>("Id")
.ValueGeneratedOnAdd();
b.Property<DateTime>("CreatedAt");
b.Property<string>("Identifier");
b.Property<string>("Metadata");
b.Property<string>("Name")
.IsRequired();
b.Property<string>("ParentId");
b.Property<string>("ParentOrgId");
b.Property<int>("Status");
b.Property<int>("Type");
b.Property<DateTime>("UpdatedAt");
b.HasKey("Id");
b.HasIndex("ParentId");
b.ToTable("Orgs");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.Result", b =>
{
b.Property<string>("Id")
.ValueGeneratedOnAdd();
b.Property<string>("Comment");
b.Property<DateTime>("CreatedAt");
b.Property<string>("LineItemId")
.IsRequired();
b.Property<string>("Metadata");
b.Property<float>("Score");
b.Property<DateTime>("ScoreDate");
b.Property<int>("ScoreStatus");
b.Property<int>("Status");
b.Property<string>("StudentUserId")
.IsRequired();
b.Property<DateTime>("UpdatedAt");
b.HasKey("Id");
b.HasIndex("LineItemId");
b.HasIndex("StudentUserId");
b.ToTable("Results");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.User", b =>
{
b.Property<string>("Id")
.ValueGeneratedOnAdd();
b.Property<DateTime>("CreatedAt");
b.Property<string>("Email");
b.Property<bool>("EnabledUser");
b.Property<string>("FamilyName")
.IsRequired();
b.Property<string>("GivenName")
.IsRequired();
b.Property<string>("Identifier");
b.Property<string>("Metadata");
b.Property<string>("MiddleName");
b.Property<string>("Password");
b.Property<string>("Phone");
b.Property<int>("Role");
b.Property<string>("SMS");
b.Property<int>("Status");
b.Property<DateTime>("UpdatedAt");
b.Property<string>("Username")
.IsRequired();
b.Property<string>("_grades");
b.HasKey("Id");
b.ToTable("Users");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.UserAgent", b =>
{
b.Property<string>("Id")
.ValueGeneratedOnAdd();
b.Property<string>("AgentUserId");
b.Property<DateTime>("CreatedAt");
b.Property<string>("Metadata");
b.Property<int>("Status");
b.Property<string>("SubjectUserId");
b.Property<DateTime>("UpdatedAt");
b.HasKey("Id");
b.HasIndex("AgentUserId");
b.HasIndex("SubjectUserId");
b.ToTable("UserAgents");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.UserOrg", b =>
{
b.Property<string>("Id")
.ValueGeneratedOnAdd();
b.Property<DateTime>("CreatedAt");
b.Property<string>("Metadata");
b.Property<string>("OrgId");
b.Property<int>("Status");
b.Property<DateTime>("UpdatedAt");
b.Property<string>("UserId");
b.HasKey("Id");
b.HasIndex("OrgId");
b.HasIndex("UserId");
b.ToTable("UserOrgs");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.AcademicSession", b =>
{
b.HasOne("OneRosterProviderDemo.Models.AcademicSession", "ParentAcademicSession")
.WithMany("Children")
.HasForeignKey("ParentAcademicSessionId");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.Course", b =>
{
b.HasOne("OneRosterProviderDemo.Models.Org", "Org")
.WithMany()
.HasForeignKey("OrgId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("OneRosterProviderDemo.Models.AcademicSession", "SchoolYearAcademicSession")
.WithMany()
.HasForeignKey("SchoolYearAcademicSessionId");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.Enrollment", b =>
{
b.HasOne("OneRosterProviderDemo.Models.IMSClass", "IMSClass")
.WithMany("Enrollments")
.HasForeignKey("IMSClassId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("OneRosterProviderDemo.Models.Org", "School")
.WithMany()
.HasForeignKey("SchoolOrgId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("OneRosterProviderDemo.Models.User", "User")
.WithMany("Enrollments")
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("OneRosterProviderDemo.Models.IMSClass", b =>
{
b.HasOne("OneRosterProviderDemo.Models.Course", "Course")
.WithMany()
.HasForeignKey("CourseId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("OneRosterProviderDemo.Models.Org", "School")
.WithMany()
.HasForeignKey("SchoolOrgId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("OneRosterProviderDemo.Models.IMSClassAcademicSession", b =>
{
b.HasOne("OneRosterProviderDemo.Models.AcademicSession", "AcademicSession")
.WithMany()
.HasForeignKey("AcademicSessionId");
b.HasOne("OneRosterProviderDemo.Models.IMSClass", "IMSClass")
.WithMany("IMSClassAcademicSessions")
.HasForeignKey("IMSClassId");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.LineItem", b =>
{
b.HasOne("OneRosterProviderDemo.Models.AcademicSession", "AcademicSession")
.WithMany()
.HasForeignKey("AcademicSessionId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("OneRosterProviderDemo.Models.IMSClass", "IMSClass")
.WithMany()
.HasForeignKey("IMSClassId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("OneRosterProviderDemo.Models.LineItemCategory", "LineItemCategory")
.WithMany()
.HasForeignKey("LineItemCategoryId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("OneRosterProviderDemo.Models.Org", b =>
{
b.HasOne("OneRosterProviderDemo.Models.Org", "Parent")
.WithMany("Children")
.HasForeignKey("ParentId");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.Result", b =>
{
b.HasOne("OneRosterProviderDemo.Models.LineItem", "LineItem")
.WithMany()
.HasForeignKey("LineItemId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("OneRosterProviderDemo.Models.User", "Student")
.WithMany()
.HasForeignKey("StudentUserId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("OneRosterProviderDemo.Models.UserAgent", b =>
{
b.HasOne("OneRosterProviderDemo.Models.User", "Agent")
.WithMany()
.HasForeignKey("AgentUserId");
b.HasOne("OneRosterProviderDemo.Models.User", "Subject")
.WithMany("UserAgents")
.HasForeignKey("SubjectUserId");
});
modelBuilder.Entity("OneRosterProviderDemo.Models.UserOrg", b =>
{
b.HasOne("OneRosterProviderDemo.Models.Org", "Org")
.WithMany()
.HasForeignKey("OrgId");
b.HasOne("OneRosterProviderDemo.Models.User", "User")
.WithMany("UserOrgs")
.HasForeignKey("UserId");
});
#pragma warning restore 612, 618
}