Я думал, что основные типы Entity Framework по умолчанию добавляются в ту же таблицу, что и их владелец. Но я не вижу этого в миграции.
Кто-нибудь подскажет мне здесь?
Есть ли способ получить желаемую миграцию со свойствами Name, добавленными непосредственно в таблицу Person?
public class Person
{
public Name Name { get; set; }
}
public class Name
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
public class PersonConfiguration : IEntityTypeConfiguration<Person>
{
public void Configure(EntityTypeBuilder<Person> person)
{
person.OwnsOne(p => p.Name);
}
}
dotnet ef миграций добавить DidNotSeeThatComing
результаты в
public partial class DidNotSeeThatComing : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "Name",
columns: table => new
{
FirstName = table.Column<string>(type: "varchar", nullable: true),
LastName = table.Column<string>(type: "varchar", nullable: true),
PersonId = table.Column<Guid>(nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_Name", x => x.PersonId);
table.ForeignKey(
name: "FK_Name_Person_PersonId",
column: x => x.PersonId,
principalTable: "Person",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
);
}
}