我正在学习MVC4默认项目文件。
我正在尝试将新列添加到默认的UserProfile表中,但它对我不起作用。该列已添加到编辑器中,但我只能将该表另存为另一个.sql脚本扩展文件。
因此我遵循这篇文章
并添加了一个属性
public string UserEmail(){get;set;}
进入UserProfile类
然后我重新运行"update-database -verbose"
但我收到了错误
数据库中已有一个名为“UserProfile”的对象。
答案 0 :(得分:1)
使用Entity Framework 5和数据库迁移,每次在案例Model being UserProfile
中向模型添加属性并添加public string UserEmail(){ get; set; }
时,您必须在程序包管理器控制台中执行Update-Database -Force
更新您的数据库,否则您将收到上面提到的错误。同时确保在执行此操作时选择正确的项目。在你的Configuaration.cs
集合AutomaticMigrationsEnabled = true;
中,这在开发期间很好,但是一旦你要部署到生产环境中就把它设置为假。
答案 1 :(得分:0)
我认为Default Userprofile仍然在AccountsModels.cs中(在Models目录中),并且不允许有2个具有相同名称的类。为“类UserProfile”执行CTRL F,如果找不到2,则尝试添加-Force标志。