【发布时间】:2017-09-19 17:01:42
【问题描述】:
如何在 EF7 中指定具有 HasOne 关系的自定义列名?
考虑以下示例类:
public class House
{
public int Id { get; set; }
public int BedroomCount { get; set; }
public Address Address { get; set; }
}
public class Address
{
public int Id { get; set; }
public string StreetName { get; set; }
public string StreetNumber { get; set; }
}
还有这个流畅的配置:
modelBuilder.Entity<House>()
.HasOne(x => x.Address)
.WithOne()
.OnDelete(DeleteBehavior.Cascade);
导致此数据库配置的原因:
CREATE TABLE [House] (
[Id] int NOT NULL IDENTITY,
[AddressId] int,
[BedroomCount] int NOT NULL,
CONSTRAINT [PK_House] PRIMARY KEY ([Id]),
CONSTRAINT [FK_House_Address_AddressId] FOREIGN KEY ([AddressId]) REFERENCES [Address] ([Id]) ON DELETE CASCADE);
CREATE TABLE [Address] (
[Id] int NOT NULL IDENTITY,
[StreetName] nvarchar(max),
[StreetNumber] nvarchar(max),
CONSTRAINT [PK_Address] PRIMARY KEY ([Id]));
如何在 House 表上指定“AddressId”以外的列名?我在非导航属性上找不到类似于 HasColumnName 的方法。
我正在使用 Entity Framework 7 RC1-Final。
【问题讨论】:
标签: entity-framework entity-framework-core