forked from amkovkov/GranuSightSoftware2
feat: AmineContentCalibration db fix warnings, remove tray table
This commit is contained in:
+35
-40
@@ -11,7 +11,7 @@ using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
{
|
||||
[DbContext(typeof(AmineContentCalibrationContext))]
|
||||
[Migration("20260227055810_AmineContentCalibrationInitial")]
|
||||
[Migration("20260227093032_AmineContentCalibrationInitial")]
|
||||
partial class AmineContentCalibrationInitial
|
||||
{
|
||||
/// <inheritdoc />
|
||||
@@ -20,6 +20,21 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder.HasAnnotation("ProductVersion", "10.0.0");
|
||||
|
||||
modelBuilder.Entity("CalibrationSeparatorImage", b =>
|
||||
{
|
||||
b.Property<int>("CalibrationRecordId")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<int>("ImageRecordId")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.HasKey("CalibrationRecordId", "ImageRecordId");
|
||||
|
||||
b.HasIndex("ImageRecordId");
|
||||
|
||||
b.ToTable("CalibrationSeparatorImages", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("GSS2.Core.Analysis.AmineContent.Database.Calibration.CalibrationRecord", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
@@ -84,10 +99,7 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
.HasColumnType("INTEGER")
|
||||
.HasComment("Уникальный идентификатор");
|
||||
|
||||
b.Property<int?>("CalibrationRecordId")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<int?>("CalibrationRecordId1")
|
||||
b.Property<int?>("CalibrationSampleId")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<string>("ImagePath")
|
||||
@@ -99,9 +111,6 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
b.Property<int?>("SeparatorRecordId")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<int?>("TrayRecordId")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<double>("Uv254Intensity")
|
||||
.HasColumnType("REAL")
|
||||
.HasComment("Интенсивность УФ излучения 254 нм (0..1)");
|
||||
@@ -116,14 +125,10 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("CalibrationRecordId");
|
||||
|
||||
b.HasIndex("CalibrationRecordId1");
|
||||
b.HasIndex("CalibrationSampleId");
|
||||
|
||||
b.HasIndex("SeparatorRecordId");
|
||||
|
||||
b.HasIndex("TrayRecordId");
|
||||
|
||||
b.ToTable("ImageRecords");
|
||||
});
|
||||
|
||||
@@ -151,57 +156,47 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
b.ToTable("SeparatorRecords");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("GSS2.Core.Analysis.AmineContent.Database.Calibration.TrayRecord", b =>
|
||||
modelBuilder.Entity("CalibrationSeparatorImage", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("INTEGER")
|
||||
.HasComment("Уникальный идентификатор");
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.CalibrationRecord", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("CalibrationRecordId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("TrayRecords");
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.ImageRecord", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ImageRecordId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("GSS2.Core.Analysis.AmineContent.Database.Calibration.ImageRecord", b =>
|
||||
{
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.CalibrationRecord", null)
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.CalibrationRecord", "CalibrationSample")
|
||||
.WithMany("SampleImages")
|
||||
.HasForeignKey("CalibrationRecordId")
|
||||
.HasForeignKey("CalibrationSampleId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.CalibrationRecord", null)
|
||||
.WithMany("SeparatorImages")
|
||||
.HasForeignKey("CalibrationRecordId1")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.SeparatorRecord", null)
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.SeparatorRecord", "Separator")
|
||||
.WithMany("Images")
|
||||
.HasForeignKey("SeparatorRecordId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.TrayRecord", null)
|
||||
.WithMany("Images")
|
||||
.HasForeignKey("TrayRecordId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
b.Navigation("CalibrationSample");
|
||||
|
||||
b.Navigation("Separator");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("GSS2.Core.Analysis.AmineContent.Database.Calibration.CalibrationRecord", b =>
|
||||
{
|
||||
b.Navigation("SampleImages");
|
||||
|
||||
b.Navigation("SeparatorImages");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("GSS2.Core.Analysis.AmineContent.Database.Calibration.SeparatorRecord", b =>
|
||||
{
|
||||
b.Navigation("Images");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("GSS2.Core.Analysis.AmineContent.Database.Calibration.TrayRecord", b =>
|
||||
{
|
||||
b.Navigation("Images");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
+32
-39
@@ -47,18 +47,6 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
table.PrimaryKey("PK_SeparatorRecords", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "TrayRecords",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "INTEGER", nullable: false, comment: "Уникальный идентификатор")
|
||||
.Annotation("Sqlite:Autoincrement", true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_TrayRecords", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "ImageRecords",
|
||||
columns: table => new
|
||||
@@ -69,23 +57,15 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
Uv365Intensity = table.Column<double>(type: "REAL", nullable: false, comment: "Интенсивность УФ излучения 365 нм (0..1)"),
|
||||
Uv254Intensity = table.Column<double>(type: "REAL", nullable: false, comment: "Интенсивность УФ излучения 254 нм (0..1)"),
|
||||
ImagePath = table.Column<string>(type: "TEXT", maxLength: 1024, nullable: false, comment: "Путь к файлу изображения"),
|
||||
CalibrationRecordId = table.Column<int>(type: "INTEGER", nullable: true),
|
||||
CalibrationRecordId1 = table.Column<int>(type: "INTEGER", nullable: true),
|
||||
SeparatorRecordId = table.Column<int>(type: "INTEGER", nullable: true),
|
||||
TrayRecordId = table.Column<int>(type: "INTEGER", nullable: true)
|
||||
CalibrationSampleId = table.Column<int>(type: "INTEGER", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_ImageRecords", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_ImageRecords_CalibrationRecords_CalibrationRecordId",
|
||||
column: x => x.CalibrationRecordId,
|
||||
principalTable: "CalibrationRecords",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_ImageRecords_CalibrationRecords_CalibrationRecordId1",
|
||||
column: x => x.CalibrationRecordId1,
|
||||
name: "FK_ImageRecords_CalibrationRecords_CalibrationSampleId",
|
||||
column: x => x.CalibrationSampleId,
|
||||
principalTable: "CalibrationRecords",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
@@ -95,38 +75,54 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
principalTable: "SeparatorRecords",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "CalibrationSeparatorImages",
|
||||
columns: table => new
|
||||
{
|
||||
CalibrationRecordId = table.Column<int>(type: "INTEGER", nullable: false),
|
||||
ImageRecordId = table.Column<int>(type: "INTEGER", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_CalibrationSeparatorImages", x => new { x.CalibrationRecordId, x.ImageRecordId });
|
||||
table.ForeignKey(
|
||||
name: "FK_ImageRecords_TrayRecords_TrayRecordId",
|
||||
column: x => x.TrayRecordId,
|
||||
principalTable: "TrayRecords",
|
||||
name: "FK_CalibrationSeparatorImages_CalibrationRecords_CalibrationRecordId",
|
||||
column: x => x.CalibrationRecordId,
|
||||
principalTable: "CalibrationRecords",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_CalibrationSeparatorImages_ImageRecords_ImageRecordId",
|
||||
column: x => x.ImageRecordId,
|
||||
principalTable: "ImageRecords",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ImageRecords_CalibrationRecordId",
|
||||
table: "ImageRecords",
|
||||
column: "CalibrationRecordId");
|
||||
name: "IX_CalibrationSeparatorImages_ImageRecordId",
|
||||
table: "CalibrationSeparatorImages",
|
||||
column: "ImageRecordId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ImageRecords_CalibrationRecordId1",
|
||||
name: "IX_ImageRecords_CalibrationSampleId",
|
||||
table: "ImageRecords",
|
||||
column: "CalibrationRecordId1");
|
||||
column: "CalibrationSampleId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ImageRecords_SeparatorRecordId",
|
||||
table: "ImageRecords",
|
||||
column: "SeparatorRecordId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ImageRecords_TrayRecordId",
|
||||
table: "ImageRecords",
|
||||
column: "TrayRecordId");
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "CalibrationSeparatorImages");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "ImageRecords");
|
||||
|
||||
@@ -135,9 +131,6 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "SeparatorRecords");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "TrayRecords");
|
||||
}
|
||||
}
|
||||
}
|
||||
+34
-29
@@ -4,9 +4,7 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration;
|
||||
|
||||
public class AmineContentCalibrationContext : DbContext
|
||||
{
|
||||
|
||||
public DbSet<ImageRecord> ImageRecords => Set<ImageRecord>();
|
||||
public DbSet<TrayRecord> TrayRecords => Set<TrayRecord>();
|
||||
public DbSet<SeparatorRecord> SeparatorRecords => Set<SeparatorRecord>();
|
||||
public DbSet<CalibrationRecord> CalibrationRecords => Set<CalibrationRecord>();
|
||||
|
||||
@@ -21,55 +19,62 @@ public class AmineContentCalibrationContext : DbContext
|
||||
modelBuilder.Entity<ImageRecord>(entity =>
|
||||
{
|
||||
entity.HasKey(x => x.Id);
|
||||
|
||||
entity.Property(x => x.ImagePath)
|
||||
.IsRequired()
|
||||
.HasMaxLength(1024);
|
||||
});
|
||||
|
||||
modelBuilder.Entity<TrayRecord>(entity =>
|
||||
{
|
||||
entity.HasKey(x => x.Id);
|
||||
|
||||
entity.HasMany(x => x.Images)
|
||||
.WithOne()
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity<SeparatorRecord>(entity =>
|
||||
{
|
||||
entity.HasKey(x => x.Id);
|
||||
|
||||
entity.HasMany(x => x.Images)
|
||||
.WithOne(x => x.Separator)
|
||||
.HasForeignKey(x => x.SeparatorRecordId)
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
entity.Property(x => x.Type)
|
||||
.IsRequired()
|
||||
.HasMaxLength(256);
|
||||
|
||||
entity.Property(x => x.Batch)
|
||||
.IsRequired()
|
||||
.HasMaxLength(256);
|
||||
|
||||
entity.HasMany(x => x.Images)
|
||||
.WithOne()
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity<CalibrationRecord>(entity =>
|
||||
{
|
||||
entity.HasKey(x => x.Id);
|
||||
|
||||
entity.Property(x => x.SampleName).HasMaxLength(512);
|
||||
entity.Property(x => x.SampleComment).HasMaxLength(2048);
|
||||
entity.Property(x => x.SampleBrand).HasMaxLength(512);
|
||||
entity.Property(x => x.SamplingPlace).HasMaxLength(512);
|
||||
entity.Property(x => x.MixtureName).HasMaxLength(512);
|
||||
|
||||
entity.HasMany(x => x.SampleImages)
|
||||
.WithOne()
|
||||
.WithOne(x => x.CalibrationSample)
|
||||
.HasForeignKey(x => x.CalibrationSampleId)
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
entity.HasMany(x => x.SeparatorImages)
|
||||
.WithOne()
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
.WithMany(x => x.UsedInCalibrations)
|
||||
.UsingEntity<Dictionary<string, object>>(
|
||||
"CalibrationSeparatorImage",
|
||||
j => j
|
||||
.HasOne<ImageRecord>()
|
||||
.WithMany()
|
||||
.HasForeignKey("ImageRecordId")
|
||||
.OnDelete(DeleteBehavior.Cascade),
|
||||
j => j
|
||||
.HasOne<CalibrationRecord>()
|
||||
.WithMany()
|
||||
.HasForeignKey("CalibrationRecordId")
|
||||
.OnDelete(DeleteBehavior.Cascade),
|
||||
j =>
|
||||
{
|
||||
j.HasKey("CalibrationRecordId", "ImageRecordId");
|
||||
j.ToTable("CalibrationSeparatorImages");
|
||||
});
|
||||
entity.Property(x => x.SampleName)
|
||||
.HasMaxLength(512);
|
||||
entity.Property(x => x.SampleComment)
|
||||
.HasMaxLength(2048);
|
||||
entity.Property(x => x.SampleBrand)
|
||||
.HasMaxLength(512);
|
||||
entity.Property(x => x.SamplingPlace)
|
||||
.HasMaxLength(512);
|
||||
entity.Property(x => x.MixtureName)
|
||||
.HasMaxLength(512);
|
||||
});
|
||||
}
|
||||
}
|
||||
+34
-39
@@ -17,6 +17,21 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder.HasAnnotation("ProductVersion", "10.0.0");
|
||||
|
||||
modelBuilder.Entity("CalibrationSeparatorImage", b =>
|
||||
{
|
||||
b.Property<int>("CalibrationRecordId")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<int>("ImageRecordId")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.HasKey("CalibrationRecordId", "ImageRecordId");
|
||||
|
||||
b.HasIndex("ImageRecordId");
|
||||
|
||||
b.ToTable("CalibrationSeparatorImages", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("GSS2.Core.Analysis.AmineContent.Database.Calibration.CalibrationRecord", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
@@ -81,10 +96,7 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
.HasColumnType("INTEGER")
|
||||
.HasComment("Уникальный идентификатор");
|
||||
|
||||
b.Property<int?>("CalibrationRecordId")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<int?>("CalibrationRecordId1")
|
||||
b.Property<int?>("CalibrationSampleId")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<string>("ImagePath")
|
||||
@@ -96,9 +108,6 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
b.Property<int?>("SeparatorRecordId")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<int?>("TrayRecordId")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<double>("Uv254Intensity")
|
||||
.HasColumnType("REAL")
|
||||
.HasComment("Интенсивность УФ излучения 254 нм (0..1)");
|
||||
@@ -113,14 +122,10 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("CalibrationRecordId");
|
||||
|
||||
b.HasIndex("CalibrationRecordId1");
|
||||
b.HasIndex("CalibrationSampleId");
|
||||
|
||||
b.HasIndex("SeparatorRecordId");
|
||||
|
||||
b.HasIndex("TrayRecordId");
|
||||
|
||||
b.ToTable("ImageRecords");
|
||||
});
|
||||
|
||||
@@ -148,57 +153,47 @@ namespace GSS2.Core.Analysis.AmineContent.Database.Calibration
|
||||
b.ToTable("SeparatorRecords");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("GSS2.Core.Analysis.AmineContent.Database.Calibration.TrayRecord", b =>
|
||||
modelBuilder.Entity("CalibrationSeparatorImage", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("INTEGER")
|
||||
.HasComment("Уникальный идентификатор");
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.CalibrationRecord", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("CalibrationRecordId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("TrayRecords");
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.ImageRecord", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ImageRecordId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("GSS2.Core.Analysis.AmineContent.Database.Calibration.ImageRecord", b =>
|
||||
{
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.CalibrationRecord", null)
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.CalibrationRecord", "CalibrationSample")
|
||||
.WithMany("SampleImages")
|
||||
.HasForeignKey("CalibrationRecordId")
|
||||
.HasForeignKey("CalibrationSampleId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.CalibrationRecord", null)
|
||||
.WithMany("SeparatorImages")
|
||||
.HasForeignKey("CalibrationRecordId1")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.SeparatorRecord", null)
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.SeparatorRecord", "Separator")
|
||||
.WithMany("Images")
|
||||
.HasForeignKey("SeparatorRecordId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("GSS2.Core.Analysis.AmineContent.Database.Calibration.TrayRecord", null)
|
||||
.WithMany("Images")
|
||||
.HasForeignKey("TrayRecordId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
b.Navigation("CalibrationSample");
|
||||
|
||||
b.Navigation("Separator");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("GSS2.Core.Analysis.AmineContent.Database.Calibration.CalibrationRecord", b =>
|
||||
{
|
||||
b.Navigation("SampleImages");
|
||||
|
||||
b.Navigation("SeparatorImages");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("GSS2.Core.Analysis.AmineContent.Database.Calibration.SeparatorRecord", b =>
|
||||
{
|
||||
b.Navigation("Images");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("GSS2.Core.Analysis.AmineContent.Database.Calibration.TrayRecord", b =>
|
||||
{
|
||||
b.Navigation("Images");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,4 +14,14 @@ public record ImageRecord
|
||||
public required double Uv254Intensity { get; init; }
|
||||
[Comment("Путь к файлу изображения")]
|
||||
public required string ImagePath { get; init; }
|
||||
|
||||
// 1:N
|
||||
public int? SeparatorRecordId { get; set; }
|
||||
public SeparatorRecord? Separator { get; set; }
|
||||
|
||||
public int? CalibrationSampleId { get; set; }
|
||||
public CalibrationRecord? CalibrationSample { get; set; }
|
||||
|
||||
// M:N
|
||||
public List<CalibrationRecord> UsedInCalibrations { get; set; } = new();
|
||||
}
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace GSS2.Core.Analysis.AmineContent.Database.Calibration;
|
||||
|
||||
public record TrayRecord
|
||||
{
|
||||
[Comment("Уникальный идентификатор")]
|
||||
public int Id { get; set; }
|
||||
[Comment("Изображения лотка")]
|
||||
public required List<ImageRecord> Images { get; init; }
|
||||
}
|
||||
Reference in New Issue
Block a user