// using System; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Metadata; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using TechHelper.Context; #nullable disable namespace TechHelper.Server.Migrations { [DbContext(typeof(ApplicationContext))] partial class ApplicationContextModelSnapshot : ModelSnapshot { protected override void BuildModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "8.0.16") .HasAnnotation("Relational:MaxIdentifierLength", 64); MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); modelBuilder.Entity("Entities.Contracts.Assignment", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("char(36)") .HasColumnName("id"); b.Property("CreatedAt") .HasColumnType("datetime(6)") .HasColumnName("created_at"); b.Property("CreatedBy") .HasColumnType("char(36)") .HasColumnName("created_by"); b.Property("Description") .IsRequired() .HasColumnType("longtext") .HasColumnName("description"); b.Property("DueDate") .HasColumnType("datetime(6)") .HasColumnName("due_date"); b.Property("IsDeleted") .HasColumnType("tinyint(1)") .HasColumnName("deleted"); b.Property("SubjectArea") .IsRequired() .HasColumnType("longtext") .HasColumnName("subject_area"); b.Property("Title") .IsRequired() .HasMaxLength(255) .HasColumnType("varchar(255)") .HasColumnName("title"); b.Property("TotalPoints") .HasColumnType("float") .HasColumnName("total_points"); b.Property("UpdatedAt") .HasColumnType("datetime(6)") .HasColumnName("updated_at"); b.Property("UserId") .HasColumnType("char(36)"); b.HasKey("Id"); b.HasIndex("CreatedBy"); b.HasIndex("UserId"); b.ToTable("assignments", (string)null); }); modelBuilder.Entity("Entities.Contracts.AssignmentAttachment", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("char(36)") .HasColumnName("id"); b.Property("AssignmentId") .HasColumnType("char(36)") .HasColumnName("assignment_id"); b.Property("FileName") .IsRequired() .HasMaxLength(255) .HasColumnType("varchar(255)") .HasColumnName("file_name"); b.Property("FilePath") .IsRequired() .HasMaxLength(255) .HasColumnType("varchar(255)") .HasColumnName("file_path"); b.Property("IsDeleted") .HasColumnType("tinyint(1)") .HasColumnName("deleted"); b.Property("UploadedAt") .HasColumnType("datetime(6)") .HasColumnName("uploaded_at"); b.HasKey("Id"); b.HasIndex("AssignmentId"); b.ToTable("assignment_attachments"); }); modelBuilder.Entity("Entities.Contracts.AssignmentClass", b => { b.Property("AssignmentId") .HasColumnType("char(36)") .HasColumnName("assignment_id") .HasColumnOrder(0); b.Property("ClassId") .HasColumnType("char(36)") .HasColumnName("class_id") .HasColumnOrder(1); b.Property("AssignedAt") .HasColumnType("datetime(6)") .HasColumnName("assigned_at"); b.Property("IsDeleted") .ValueGeneratedOnAdd() .HasColumnType("tinyint(1)") .HasDefaultValue(false) .HasColumnName("deleted"); b.HasKey("AssignmentId", "ClassId"); b.HasIndex("ClassId"); b.ToTable("assignment_class", (string)null); }); modelBuilder.Entity("Entities.Contracts.AssignmentGroup", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("char(36)") .HasColumnName("id"); b.Property("AssignmentId") .HasColumnType("char(36)") .HasColumnName("assignment"); b.Property("Descript") .IsRequired() .HasMaxLength(65535) .HasColumnType("longtext") .HasColumnName("descript"); b.Property("IsDeleted") .ValueGeneratedOnAdd() .HasColumnType("tinyint(1)") .HasDefaultValue(false) .HasColumnName("deleted"); b.Property("Number") .HasColumnType("tinyint unsigned") .HasColumnName("number"); b.Property("ParentGroup") .HasColumnType("char(36)") .HasColumnName("parent_group"); b.Property("Title") .IsRequired() .HasMaxLength(65535) .HasColumnType("longtext") .HasColumnName("title"); b.Property("TotalPoints") .HasColumnType("float") .HasColumnName("total_points"); b.Property("ValidQuestionGroup") .HasColumnType("tinyint(1)") .HasColumnName("valid_question_group"); b.HasKey("Id"); b.HasIndex("AssignmentId"); b.HasIndex("ParentGroup"); b.ToTable("assignment_group", (string)null); }); modelBuilder.Entity("Entities.Contracts.AssignmentQuestion", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("char(36)") .HasColumnName("id"); b.Property("AssignmentGroupId") .HasColumnType("char(36)") .HasColumnName("group_id"); b.Property("CreatedAt") .HasColumnType("datetime(6)") .HasColumnName("created_at"); b.Property("IsDeleted") .ValueGeneratedOnAdd() .HasColumnType("tinyint(1)") .HasDefaultValue(false) .HasColumnName("deleted"); b.Property("QuestionId") .HasColumnType("char(36)") .HasColumnName("question_id"); b.Property("QuestionNumber") .HasColumnType("tinyint unsigned") .HasColumnName("question_number"); b.Property("Score") .HasColumnType("float") .HasColumnName("score"); b.HasKey("Id"); b.HasIndex("AssignmentGroupId"); b.HasIndex("QuestionId"); b.ToTable("assignment_questions", (string)null); }); modelBuilder.Entity("Entities.Contracts.Class", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("char(36)") .HasColumnName("id"); b.Property("CreatedAt") .ValueGeneratedOnAdd() .HasColumnType("datetime(6)") .HasColumnName("created_at"); MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("CreatedAt")); b.Property("Description") .HasColumnType("longtext") .HasColumnName("description"); b.Property("Grade") .HasColumnType("tinyint unsigned") .HasColumnName("grade"); b.Property("HeadTeacherId") .HasColumnType("char(36)") .HasColumnName("head_teacher_id"); b.Property("IsDeleted") .ValueGeneratedOnAdd() .HasColumnType("tinyint(1)") .HasDefaultValue(false) .HasColumnName("deleted"); b.Property("Number") .HasColumnType("tinyint unsigned") .HasColumnName("class"); b.Property("UpdatedAt") .ValueGeneratedOnAddOrUpdate() .HasColumnType("datetime(6)") .HasColumnName("updated_at"); MySqlPropertyBuilderExtensions.UseMySqlComputedColumn(b.Property("UpdatedAt")); b.HasKey("Id"); b.HasIndex("HeadTeacherId"); b.ToTable("classes", (string)null); }); modelBuilder.Entity("Entities.Contracts.ClassStudent", b => { b.Property("ClassId") .HasColumnType("char(36)") .HasColumnName("class_id") .HasColumnOrder(0); b.Property("StudentId") .HasColumnType("char(36)") .HasColumnName("student_id") .HasColumnOrder(1); b.Property("EnrollmentDate") .HasColumnType("datetime(6)") .HasColumnName("enrollment_date"); b.Property("IsDeleted") .ValueGeneratedOnAdd() .HasColumnType("tinyint(1)") .HasDefaultValue(false) .HasColumnName("deleted"); b.HasKey("ClassId", "StudentId"); b.HasIndex("StudentId"); b.ToTable("class_student", (string)null); }); modelBuilder.Entity("Entities.Contracts.ClassTeacher", b => { b.Property("ClassId") .HasColumnType("char(36)") .HasColumnName("class_id"); b.Property("TeacherId") .HasColumnType("char(36)") .HasColumnName("teacher_id"); b.Property("SubjectTaught") .IsRequired() .HasColumnType("longtext") .HasColumnName("subject_taught"); b.HasKey("ClassId", "TeacherId"); b.HasIndex("TeacherId"); b.ToTable("class_teachers", (string)null); }); modelBuilder.Entity("Entities.Contracts.Question", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("char(36)") .HasColumnName("id"); b.Property("CorrectAnswer") .IsRequired() .HasMaxLength(65535) .HasColumnType("longtext") .HasColumnName("correct_answer"); b.Property("CreatedAt") .ValueGeneratedOnAdd() .HasColumnType("datetime(6)") .HasColumnName("created_at"); MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("CreatedAt")); b.Property("CreatedBy") .HasColumnType("char(36)") .HasColumnName("created_by"); b.Property("DifficultyLevel") .IsRequired() .HasMaxLength(10) .HasColumnType("varchar(10)") .HasColumnName("difficulty_level"); b.Property("IsDeleted") .ValueGeneratedOnAdd() .HasColumnType("tinyint(1)") .HasDefaultValue(false) .HasColumnName("deleted"); b.Property("QuestionText") .IsRequired() .HasMaxLength(65535) .HasColumnType("longtext") .HasColumnName("question_text"); b.Property("QuestionType") .IsRequired() .HasMaxLength(20) .HasColumnType("varchar(20)") .HasColumnName("question_type"); b.Property("SubjectArea") .IsRequired() .HasMaxLength(100) .HasColumnType("varchar(100)") .HasColumnName("subject_area"); b.Property("UpdatedAt") .IsConcurrencyToken() .ValueGeneratedOnAddOrUpdate() .HasColumnType("datetime(6)") .HasColumnName("updated_at"); b.Property("ValidQuestion") .HasColumnType("tinyint(1)") .HasColumnName("valid_question"); b.HasKey("Id"); b.HasIndex("CreatedBy"); b.ToTable("questions", (string)null); }); modelBuilder.Entity("Entities.Contracts.Submission", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("char(36)") .HasColumnName("id"); b.Property("AssignmentId") .HasColumnType("char(36)") .HasColumnName("assignment_id"); b.Property("AttemptNumber") .HasColumnType("char(36)") .HasColumnName("attempt_number"); b.Property("GradedAt") .HasColumnType("datetime(6)") .HasColumnName("graded_at"); b.Property("GradedBy") .HasColumnType("char(36)") .HasColumnName("graded_by"); b.Property("IsDeleted") .ValueGeneratedOnAdd() .HasColumnType("tinyint(1)") .HasDefaultValue(false) .HasColumnName("deleted"); b.Property("OverallFeedback") .IsRequired() .HasColumnType("longtext") .HasColumnName("overall_feedback"); b.Property("OverallGrade") .HasPrecision(5, 2) .HasColumnType("float") .HasColumnName("overall_grade"); b.Property("Status") .IsRequired() .HasMaxLength(15) .HasColumnType("varchar(15)") .HasColumnName("status"); b.Property("StudentId") .HasColumnType("char(36)") .HasColumnName("student_id"); b.Property("SubmissionTime") .HasColumnType("datetime(6)") .HasColumnName("submission_time"); b.HasKey("Id"); b.HasIndex("AssignmentId"); b.HasIndex("GradedBy"); b.HasIndex("StudentId"); b.ToTable("submissions", (string)null); }); modelBuilder.Entity("Entities.Contracts.SubmissionDetail", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("char(36)") .HasColumnName("id"); b.Property("AssignmentQuestionId") .HasColumnType("char(36)") .HasColumnName("assignment_question_id"); b.Property("CreatedAt") .ValueGeneratedOnAdd() .HasColumnType("datetime(6)") .HasColumnName("created_at"); MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("CreatedAt")); b.Property("IsCorrect") .HasColumnType("tinyint(1)") .HasColumnName("is_correct"); b.Property("IsDeleted") .ValueGeneratedOnAdd() .HasColumnType("tinyint(1)") .HasDefaultValue(false) .HasColumnName("deleted"); b.Property("PointsAwarded") .HasPrecision(5, 2) .HasColumnType("float") .HasColumnName("points_awarded"); b.Property("StudentAnswer") .IsRequired() .HasColumnType("longtext") .HasColumnName("student_answer"); b.Property("StudentId") .HasColumnType("char(36)") .HasColumnName("student_id"); b.Property("SubmissionId") .HasColumnType("char(36)") .HasColumnName("submission_id"); b.Property("TeacherFeedback") .IsRequired() .HasColumnType("longtext") .HasColumnName("teacher_feedback"); b.Property("UpdatedAt") .IsConcurrencyToken() .ValueGeneratedOnAddOrUpdate() .HasColumnType("datetime(6)") .HasColumnName("updated_at"); b.HasKey("Id"); b.HasIndex("AssignmentQuestionId"); b.HasIndex("StudentId"); b.HasIndex("SubmissionId"); b.ToTable("submission_details", (string)null); }); modelBuilder.Entity("Entities.Contracts.User", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("char(36)"); b.Property("AccessFailedCount") .HasColumnType("int"); b.Property("Address") .HasColumnType("longtext"); b.Property("ConcurrencyStamp") .IsConcurrencyToken() .HasColumnType("longtext"); b.Property("DisplayName") .HasColumnType("longtext"); b.Property("Email") .HasMaxLength(256) .HasColumnType("varchar(256)"); b.Property("EmailConfirmed") .HasColumnType("tinyint(1)"); b.Property("IsDeleted") .HasColumnType("tinyint(1)") .HasColumnName("deleted"); b.Property("LockoutEnabled") .HasColumnType("tinyint(1)"); b.Property("LockoutEnd") .HasColumnType("datetime(6)"); b.Property("NormalizedEmail") .HasMaxLength(256) .HasColumnType("varchar(256)"); b.Property("NormalizedUserName") .HasMaxLength(256) .HasColumnType("varchar(256)"); b.Property("PasswordHash") .HasColumnType("longtext"); b.Property("PhoneNumber") .HasColumnType("longtext"); b.Property("PhoneNumberConfirmed") .HasColumnType("tinyint(1)"); b.Property("RefreshToken") .HasColumnType("longtext"); b.Property("RefreshTokenExpiryTime") .HasColumnType("datetime(6)"); b.Property("SecurityStamp") .HasColumnType("longtext"); b.Property("TwoFactorEnabled") .HasColumnType("tinyint(1)"); b.Property("UserName") .HasMaxLength(256) .HasColumnType("varchar(256)"); b.HasKey("Id"); b.HasIndex("NormalizedEmail") .HasDatabaseName("EmailIndex"); b.HasIndex("NormalizedUserName") .IsUnique() .HasDatabaseName("UserNameIndex"); b.ToTable("AspNetUsers", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("char(36)"); b.Property("ConcurrencyStamp") .IsConcurrencyToken() .HasColumnType("longtext"); b.Property("Name") .HasMaxLength(256) .HasColumnType("varchar(256)"); b.Property("NormalizedName") .HasMaxLength(256) .HasColumnType("varchar(256)"); b.HasKey("Id"); b.HasIndex("NormalizedName") .IsUnique() .HasDatabaseName("RoleNameIndex"); b.ToTable("AspNetRoles", (string)null); b.HasData( new { Id = new Guid("d4b41bc3-612e-49dd-aeda-6a98ea0e4e68"), Name = "Student", NormalizedName = "STUDENT" }, new { Id = new Guid("b2e087e6-ea32-46c4-aeb3-09b936cd0cf4"), Name = "Teacher", NormalizedName = "TEACHER" }, new { Id = new Guid("ba33e047-8354-4f2c-b8b1-1f46441c28fc"), Name = "Administrator", NormalizedName = "ADMINISTRATOR" }); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); b.Property("ClaimType") .HasColumnType("longtext"); b.Property("ClaimValue") .HasColumnType("longtext"); b.Property("RoleId") .HasColumnType("char(36)"); b.HasKey("Id"); b.HasIndex("RoleId"); b.ToTable("AspNetRoleClaims", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); b.Property("ClaimType") .HasColumnType("longtext"); b.Property("ClaimValue") .HasColumnType("longtext"); b.Property("UserId") .HasColumnType("char(36)"); b.HasKey("Id"); b.HasIndex("UserId"); b.ToTable("AspNetUserClaims", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => { b.Property("LoginProvider") .HasColumnType("varchar(255)"); b.Property("ProviderKey") .HasColumnType("varchar(255)"); b.Property("ProviderDisplayName") .HasColumnType("longtext"); b.Property("UserId") .HasColumnType("char(36)"); b.HasKey("LoginProvider", "ProviderKey"); b.HasIndex("UserId"); b.ToTable("AspNetUserLogins", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => { b.Property("UserId") .HasColumnType("char(36)"); b.Property("RoleId") .HasColumnType("char(36)"); b.HasKey("UserId", "RoleId"); b.HasIndex("RoleId"); b.ToTable("AspNetUserRoles", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => { b.Property("UserId") .HasColumnType("char(36)"); b.Property("LoginProvider") .HasColumnType("varchar(255)"); b.Property("Name") .HasColumnType("varchar(255)"); b.Property("Value") .HasColumnType("longtext"); b.HasKey("UserId", "LoginProvider", "Name"); b.ToTable("AspNetUserTokens", (string)null); }); modelBuilder.Entity("Entities.Contracts.Assignment", b => { b.HasOne("Entities.Contracts.User", "Creator") .WithMany() .HasForeignKey("CreatedBy") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Entities.Contracts.User", null) .WithMany("CreatedAssignments") .HasForeignKey("UserId"); b.Navigation("Creator"); }); modelBuilder.Entity("Entities.Contracts.AssignmentAttachment", b => { b.HasOne("Entities.Contracts.Assignment", "Assignment") .WithMany("AssignmentAttachments") .HasForeignKey("AssignmentId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Assignment"); }); modelBuilder.Entity("Entities.Contracts.AssignmentClass", b => { b.HasOne("Entities.Contracts.Assignment", "Assignment") .WithMany("AssignmentClasses") .HasForeignKey("AssignmentId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Entities.Contracts.Class", "Class") .WithMany("AssignmentClasses") .HasForeignKey("ClassId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Assignment"); b.Navigation("Class"); }); modelBuilder.Entity("Entities.Contracts.AssignmentGroup", b => { b.HasOne("Entities.Contracts.Assignment", "Assignment") .WithMany("AssignmentGroups") .HasForeignKey("AssignmentId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("Entities.Contracts.AssignmentGroup", "ParentAssignmentGroup") .WithMany("ChildAssignmentGroups") .HasForeignKey("ParentGroup") .OnDelete(DeleteBehavior.SetNull); b.Navigation("Assignment"); b.Navigation("ParentAssignmentGroup"); }); modelBuilder.Entity("Entities.Contracts.AssignmentQuestion", b => { b.HasOne("Entities.Contracts.AssignmentGroup", "AssignmentGroup") .WithMany("AssignmentQuestions") .HasForeignKey("AssignmentGroupId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Entities.Contracts.Question", "Question") .WithMany("AssignmentQuestions") .HasForeignKey("QuestionId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("AssignmentGroup"); b.Navigation("Question"); }); modelBuilder.Entity("Entities.Contracts.Class", b => { b.HasOne("Entities.Contracts.User", "HeadTeacher") .WithMany() .HasForeignKey("HeadTeacherId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("HeadTeacher"); }); modelBuilder.Entity("Entities.Contracts.ClassStudent", b => { b.HasOne("Entities.Contracts.Class", "Class") .WithMany("ClassStudents") .HasForeignKey("ClassId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Entities.Contracts.User", "Student") .WithMany("EnrolledClassesLink") .HasForeignKey("StudentId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Class"); b.Navigation("Student"); }); modelBuilder.Entity("Entities.Contracts.ClassTeacher", b => { b.HasOne("Entities.Contracts.Class", "Class") .WithMany("ClassTeachers") .HasForeignKey("ClassId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Entities.Contracts.User", "Teacher") .WithMany("TaughtClassesLink") .HasForeignKey("TeacherId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Class"); b.Navigation("Teacher"); }); modelBuilder.Entity("Entities.Contracts.Question", b => { b.HasOne("Entities.Contracts.User", "Creator") .WithMany("CreatedQuestions") .HasForeignKey("CreatedBy") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Creator"); }); modelBuilder.Entity("Entities.Contracts.Submission", b => { b.HasOne("Entities.Contracts.Assignment", "Assignment") .WithMany("Submissions") .HasForeignKey("AssignmentId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Entities.Contracts.User", "Grader") .WithMany("GradedSubmissions") .HasForeignKey("GradedBy") .OnDelete(DeleteBehavior.SetNull); b.HasOne("Entities.Contracts.User", "Student") .WithMany("SubmissionsAsStudent") .HasForeignKey("StudentId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Assignment"); b.Navigation("Grader"); b.Navigation("Student"); }); modelBuilder.Entity("Entities.Contracts.SubmissionDetail", b => { b.HasOne("Entities.Contracts.AssignmentQuestion", "AssignmentQuestion") .WithMany("SubmissionDetails") .HasForeignKey("AssignmentQuestionId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Entities.Contracts.User", "User") .WithMany("SubmissionDetails") .HasForeignKey("StudentId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("Entities.Contracts.Submission", "Submission") .WithMany("SubmissionDetails") .HasForeignKey("SubmissionId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("AssignmentQuestion"); b.Navigation("Submission"); b.Navigation("User"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => { b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null) .WithMany() .HasForeignKey("RoleId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => { b.HasOne("Entities.Contracts.User", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => { b.HasOne("Entities.Contracts.User", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => { b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null) .WithMany() .HasForeignKey("RoleId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Entities.Contracts.User", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => { b.HasOne("Entities.Contracts.User", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Entities.Contracts.Assignment", b => { b.Navigation("AssignmentAttachments"); b.Navigation("AssignmentClasses"); b.Navigation("AssignmentGroups"); b.Navigation("Submissions"); }); modelBuilder.Entity("Entities.Contracts.AssignmentGroup", b => { b.Navigation("AssignmentQuestions"); b.Navigation("ChildAssignmentGroups"); }); modelBuilder.Entity("Entities.Contracts.AssignmentQuestion", b => { b.Navigation("SubmissionDetails"); }); modelBuilder.Entity("Entities.Contracts.Class", b => { b.Navigation("AssignmentClasses"); b.Navigation("ClassStudents"); b.Navigation("ClassTeachers"); }); modelBuilder.Entity("Entities.Contracts.Question", b => { b.Navigation("AssignmentQuestions"); }); modelBuilder.Entity("Entities.Contracts.Submission", b => { b.Navigation("SubmissionDetails"); }); modelBuilder.Entity("Entities.Contracts.User", b => { b.Navigation("CreatedAssignments"); b.Navigation("CreatedQuestions"); b.Navigation("EnrolledClassesLink"); b.Navigation("GradedSubmissions"); b.Navigation("SubmissionDetails"); b.Navigation("SubmissionsAsStudent"); b.Navigation("TaughtClassesLink"); }); #pragma warning restore 612, 618 } } }