我首先开始掌握 EF4 代码,到目前为止我很喜欢它。但我在将实体映射到具有复合主键的表时遇到问题。
我尝试过的配置如下所示:
public SubscriptionUserConfiguration()
{
Property(u => u.SubscriptionID).IsIdentity();
Property(u => u.UserName).IsIdentity();
}
这会引发此异常: 无法推断实体类型“SubscriptionUser”的键。
我错过了什么?
最佳答案
你也可以使用
HasKey(u => new { u.SubscriptionID, u.UserName });
编辑:
我发现的一个限制是以下方法不起作用:
public ProjectAssignmentConfiguration()
{
HasKey(u => u.Employee.EmployeeId);
HasKey(u => u.Project.ProjectId);
}
或
public ProjectAssignmentConfiguration()
{
HasKey(u => new { u.Employee.EmployeeId, u.Project.ProjectId });
}
那么如何设置一个实体,其中连接表具有由外键组成的主键?
关于entity-framework - 如何首先在 Entity Framework 4 代码中映射复合主键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2733254/