使用实体框架工具,我首先将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