EntityFramework标识外键控的代码优先迁移错误

时间:2015-12-22 09:00:23

标签: asp.net-mvc entity-framework foreign-keys

我有一个如此定义的模型类:

public class Request
{
    public int Id { get; set; }
    [ForeignKey("Requester")]
    public string RequesterId { get; set; }
    public virtual ICollection<ApplicationUser> Requester { get; set; }
}

我只是在请求和发出请求的用户之间建立外键关系。但是,当我尝试执行添加迁移时,收到以下错误:

  

Project.DataContexts.IdentityUserLogin :: EntityType&#39; IdentityUserLogin&#39;没有定义键。定义此EntityType的键。   Project.DataContexts.IdentityUserRole :: EntityType&#39; IdentityUserRole&#39;没有定义键。定义此EntityType的键。   IdentityUserLogins:EntityType:EntitySet&#39; IdentityUserLogins&#39;基于类型&#39; IdentityUserLogin&#39;没有定义键。   IdentityUserRoles:EntityType:EntitySet&#39; IdentityUserRoles&#39;基于类型&#39; IdentityUserRole&#39;没有定义键。

我环顾四周,唯一类似的情况是人们使用Fluent-API和模型绑定。然而,我使用数据注释。对此有何帮助?谢谢!

1 个答案:

答案 0 :(得分:0)

错误告诉您问题究竟是什么。您的IdentityUserLoginIdentityUserRole类没有标记为[Key]的属性,或者可以根据约定解释为主键。为什么你们两个都没有发布在异常中明确提到的类是超出我的。