我正在尝试将我的MVC4模型迁移到使用Code First EF 6的数据库。当我运行“update-database”命令时,我收到一条错误消息
为表'Conference'指定了多个标识列。每个表只允许一个标识列。
我查看了迁移文件,并尝试移动语句,以便他们不会尝试在一个表上添加2个标识列并获得此信息。
无法找到对象“dbo.foo”,因为它不存在或您没有权限。
所以我想我接下来会尝试删除所有迁移并重做整个过程当我尝试enable-migrations -contexttypename
命令时我得到了这个
使用数据库初始化程序
创建的检测到的数据库
当我查看初始迁移时,它看起来像我在获得项目的其他部分之前最初使用的迁移,缺少几个模型。然后,当我添加一个迁移时,我的问题从这篇文章的开头重复。
我已经用尽了所有关于MVC4的知识,而且我的老师并没有表现出很大的兴趣来帮助解决这个问题。有人可以提供一些见解吗?
这是模型
public class Conference
{
[Key]
public int conferenceID { get; set; }
public string username { get; set; }
public string Title { get; set; }
public DateTime StartDate { get; set; }
public DateTime EndDate { get; set; }
public string Topic { get; set; }
public virtual ICollection<Sponsor> Sponsors{ get; set; }
public string Description { get; set; }
public int Rating { get; set; }
public string Location { get; set; }
public bool Active { get; set; }
public virtual ICollection<Session> Sessions { get; set; }
}
我删除了所有的html和验证元标记,以便于阅读
答案 0 :(得分:0)
您可能在DbContext类中有不同的配置,或者在DbContext类的OnModelCreating方法中有一个EntityTypeConfiguration类。
答案 1 :(得分:0)
这可能只是因为你玩过PK。