Entity framework 实体框架6:不使用主键的关系
假设我有一个这样的数据模型:Entity framework 实体框架6:不使用主键的关系,entity-framework,entity-framework-6,Entity Framework,Entity Framework 6,假设我有一个这样的数据模型: dbo.Application { int Id { get; set; } int ClientAlternateId { get; set; } ... public virtual Client Client { get; set; } } dbo.Client { int Id { get; set; } int AlternateId { get; set; } string Name { get; set;
dbo.Application
{
int Id { get; set; }
int ClientAlternateId { get; set; }
...
public virtual Client Client { get; set; }
}
dbo.Client
{
int Id { get; set; }
int AlternateId { get; set; }
string Name { get; set; }
...
}
其中两个表上的主键都是Id
列。应用程序
类型通过其AlternateId
列(不是键)与客户机
表相关联。此列中的数据始终是唯一的
有没有办法让实体框架映射到这一点?我不相信我能使用:
HasRequired(t => t.Client).WithMany().HasForeignKey(c => c.ClientAlternateId);
因为该字段不是主键。否。关联始终需要主键。EF不支持与唯一索引的关联(尚未)。可能重复投票,以将其作为实体框架中的新功能添加