使用复合键和EF 5创建MVC控制器时出错

时间:2012-12-14 18:09:17

标签: mysql asp.net-mvc entity-framework composite-key

使用实体框架工具,我首先将MySQL数据库的POCO类反向设计为类库。我创建了一个引用此类库的MVC项目,我正在尝试创建一个具有读/写操作和视图的控制器。设置模型和数据上下文类并单击“添加”后,我收到此错误:

EntityType xxx没有定义键。定义此EntityType的密钥。

问题是,在地图中它被正确标记:

    public UserApplicationMap()
    {
        // Primary Key
        this.HasKey(t => new { t.UserID, t.AppID });
        ...

我尝试在课堂上这样做:

public class UserApplication
{
    [Key, Column(Order = 0)]
    public int UserID { get; set; }

    [Key, Column(Order = 1)]
    public int AppID { get; set; }

但编译器符合Column属性并将其标记为无效。

所以我有点难过。如果我可以使用复合键,我真的不想在此表中添加自动增量字段。

我正在使用Visual Studio 2012,EF 5,MVC 4和MySQL连接器6.6.4

0 个答案:

没有答案