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不支持与唯一索引的关联(尚未)。可能重复投票,以将其作为实体框架中的新功能添加