// <auto-generated /> using System; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; using data; #nullable disable namespace data.Migrations { [DbContext(typeof(RemoteDatabaseContext))] partial class RemoteDatabaseContextModelSnapshot : ModelSnapshot { protected override void BuildModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "8.0.10") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); modelBuilder.Entity("Data.DAO.Attendance", b => { b.Property<int>("AttendanceId") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("AttendanceId")); b.Property<DateOnly>("Date") .HasColumnType("date"); b.Property<int>("GroupId") .HasColumnType("integer"); b.Property<int>("GroupSubjectId") .HasColumnType("integer"); b.Property<int>("LessonNumber") .HasColumnType("integer"); b.Property<int>("StudentId") .HasColumnType("integer"); b.Property<int>("VisitId") .HasColumnType("integer"); b.HasKey("AttendanceId"); b.HasIndex("GroupId"); b.HasIndex("GroupSubjectId"); b.HasIndex("StudentId"); b.HasIndex("VisitId"); b.ToTable("Attendances"); }); modelBuilder.Entity("Data.DAO.Group", b => { b.Property<int>("GroupId") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("GroupId")); b.Property<string>("GroupName") .IsRequired() .HasColumnType("text"); b.HasKey("GroupId"); b.ToTable("Groups"); }); modelBuilder.Entity("Data.DAO.GroupSubject", b => { b.Property<int>("GroupSubjectId") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("GroupSubjectId")); b.Property<int>("GroupId") .HasColumnType("integer"); b.Property<int>("SemesterId") .HasColumnType("integer"); b.Property<int>("SubjectId") .HasColumnType("integer"); b.HasKey("GroupSubjectId"); b.HasIndex("GroupId"); b.HasIndex("SemesterId"); b.HasIndex("SubjectId"); b.ToTable("GroupSubjects"); }); modelBuilder.Entity("Data.DAO.Semester", b => { b.Property<int>("SemesterId") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("SemesterId")); b.Property<DateTime>("EndTime") .HasColumnType("timestamp with time zone"); b.Property<DateTime>("StartTime") .HasColumnType("timestamp with time zone"); b.HasKey("SemesterId"); b.ToTable("Semesters"); }); modelBuilder.Entity("Data.DAO.Student", b => { b.Property<int>("StudentId") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("StudentId")); b.Property<string>("FirstName") .IsRequired() .HasColumnType("text"); b.Property<int>("GroupId") .HasColumnType("integer"); b.Property<string>("LastName") .IsRequired() .HasColumnType("text"); b.Property<string>("Patronymic") .IsRequired() .HasColumnType("text"); b.HasKey("StudentId"); b.HasIndex("GroupId"); b.ToTable("Students"); }); modelBuilder.Entity("Data.DAO.Subject", b => { b.Property<int>("SubjectId") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("SubjectId")); b.Property<int>("GroupId") .HasColumnType("integer"); b.Property<string>("SubjectName") .IsRequired() .HasColumnType("text"); b.HasKey("SubjectId"); b.HasIndex("GroupId"); b.ToTable("Subjects"); }); modelBuilder.Entity("Data.DAO.Visit", b => { b.Property<int>("VisitId") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("VisitId")); b.Property<string>("VisitName") .IsRequired() .HasColumnType("text"); b.HasKey("VisitId"); b.ToTable("Visits"); }); modelBuilder.Entity("Data.DAO.Attendance", b => { b.HasOne("Data.DAO.Group", "Group") .WithMany() .HasForeignKey("GroupId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Data.DAO.GroupSubject", "GroupSubject") .WithMany("Attendances") .HasForeignKey("GroupSubjectId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Data.DAO.Student", "Student") .WithMany("Attendances") .HasForeignKey("StudentId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Data.DAO.Visit", "Visit") .WithMany("Attendances") .HasForeignKey("VisitId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Group"); b.Navigation("GroupSubject"); b.Navigation("Student"); b.Navigation("Visit"); }); modelBuilder.Entity("Data.DAO.GroupSubject", b => { b.HasOne("Data.DAO.Group", "Group") .WithMany("GroupSubjects") .HasForeignKey("GroupId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Data.DAO.Semester", "Semester") .WithMany("GroupSubjects") .HasForeignKey("SemesterId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Data.DAO.Subject", "Subject") .WithMany("GroupSubjects") .HasForeignKey("SubjectId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Group"); b.Navigation("Semester"); b.Navigation("Subject"); }); modelBuilder.Entity("Data.DAO.Student", b => { b.HasOne("Data.DAO.Group", "Group") .WithMany("Students") .HasForeignKey("GroupId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Group"); }); modelBuilder.Entity("Data.DAO.Subject", b => { b.HasOne("Data.DAO.Group", "Group") .WithMany("Subjects") .HasForeignKey("GroupId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Group"); }); modelBuilder.Entity("Data.DAO.Group", b => { b.Navigation("GroupSubjects"); b.Navigation("Students"); b.Navigation("Subjects"); }); modelBuilder.Entity("Data.DAO.GroupSubject", b => { b.Navigation("Attendances"); }); modelBuilder.Entity("Data.DAO.Semester", b => { b.Navigation("GroupSubjects"); }); modelBuilder.Entity("Data.DAO.Student", b => { b.Navigation("Attendances"); }); modelBuilder.Entity("Data.DAO.Subject", b => { b.Navigation("GroupSubjects"); }); modelBuilder.Entity("Data.DAO.Visit", b => { b.Navigation("Attendances"); }); #pragma warning restore 612, 618 } } }