编辑simpleMembership系统创建的默认表

时间:2013-02-03 21:01:51

标签: c# asp.net asp.net-mvc

我正在学习MVC4默认项目文件。

我正在尝试将新列添加到默认的UserProfile表中,但它对我不起作用。该列已添加到编辑器中,但我只能将该表另存为另一个.sql脚本扩展文件。

因此我遵循这篇文章

http://blog.longle.net/2012/09/25/seeding-users-and-roles-with-mvc4-simplemembershipprovider-simpleroleprovider-ef5-codefirst-and-custom-user-properties/

并添加了一个属性 public string UserEmail(){get;set;}进入UserProfile类

然后我重新运行"update-database -verbose" 但我收到了错误

  

数据库中已有一个名为“UserProfile”的对象。

2 个答案:

答案 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标志。