我有以下表格。
CREATE TABLE Thing
(
Id INT PRIMARY KEY IDENTITY(1, 1),
CreatedByUser INT NOT NULL
)
CREATE TABLE User
(
Id INT PRIMARY KEY IDENTITY(1, 1)
)
我有以下EF实体,(有意(用没有Id的导航属性定义。
public class Thing
{
public int Id { get; set; }
public User CreatedByUser { get; set; }
}
public class User
{
public int Id { get; set; }
}
我想知道当表上的基础Id字段与我希望包含在实体模型中的导航属性同名时,如何定义外键关系以下示例找不到名为CreatedByUser_Id的db列
modelBuilder.Entity<Thing>()
.HasOne(x => x.CreatedByUser)
.WithMany()
.HasForeignKey("CreatedByUser_Id")
.IsRequired();
感谢
用以下内容修复了它。
modelBuilder.Entity<Thing>()
.HasOne(x => x.CreatedByUser)
.WithMany()
.HasForeignKey("CreatedByUser_Id")
.IsRequired();
modelBuilder.Entity<Thing>()
.Property("CreatedByUser_Id")
.HasColumnName("CreatedByUser");