Столбец, о котором идет речь. является PdfTemplateId в моей сущности.
Код: Выделить всё
public class Company : ISoftDelete
{
public int Id { get; set; }
[Required]
[StringLength(120)]
public string Name { get; set; }
[Display(Name = "Company Code")]
[Required]
[StringLength(80)]
public string CompanyCode { get; set; }
//[Display(Name = "Default PDF Template")]
//public int PdfTemplateId { get; set; }
//public PdfTemplate PdfTemplate { get; set; }
// Additional code...
}
public class CompanyConfiguration : IEntityTypeConfiguration
{
public void Configure(EntityTypeBuilder builder)
{
builder.HasMany(c => c.Facilities)
.WithOne(f => f.Company)
.OnDelete(DeleteBehavior.NoAction);
builder.HasMany(c => c.Products)
.WithOne(p => p.Company)
.OnDelete(DeleteBehavior.NoAction);
builder.HasMany(c => c.Customers)
.WithOne(c => c.Company)
.OnDelete(DeleteBehavior.NoAction);
}
}
Когда я выполняю новую добавленную миграцию, никаких изменений не происходит. Ниже приведена часть моего ApplicationDbContextModelSnapshot.
Код: Выделить всё
modelBuilder.Entity("PegasusEntities.Models.Company", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int");
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
b.Property("CompanyCode")
.IsRequired()
.HasMaxLength(80)
.HasColumnType("nvarchar(80)");
b.Property("DeletedOnUtc")
.HasColumnType("datetime2");
b.Property("IsDeleted")
.HasColumnType("bit");
b.Property("IsLimited")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false);
b.Property("Name")
.IsRequired()
.HasMaxLength(120)
.HasColumnType("nvarchar(120)");
b.Property("PdfTemplateId")
.HasColumnType("int");
b.HasKey("Id");
b.HasIndex("PdfTemplateId");
b.ToTable("Companies", (string)null);
});
К сожалению, я не получаю DropColumn во второй миграции. Вместо этого я получаю следующую миграцию.
Код: Выделить всё
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_Companies_PdfTemplates_PdfTemplateId",
table: "Companies");
migrationBuilder.AlterColumn(
name: "PdfTemplateId",
table: "Companies",
type: "int",
nullable: true,
oldClrType: typeof(int),
oldType: "int");
migrationBuilder.AddForeignKey(
name: "FK_Companies_PdfTemplates_PdfTemplateId",
table: "Companies",
column: "PdfTemplateId",
principalTable: "PdfTemplates",
principalColumn: "Id");
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... ove-column
Мобильная версия