民间,
创建新的ASP.NET MVC 4应用程序后,我就是这样做的:
更新了UsersContext类以引用新表: public class UsersContext:DbCOntext {
...
DbSet<Items> Items {get; set; }
}
跑完应用程序。
在调试器中,我看到调用了以下行:
WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true);
但是,当我查看数据库时,只创建了与SimpleMembershipProvider相关的五个表。我的附加表没有被创建。
我想知道是否有一些错过的步骤。
提前感谢您的帮助。
的问候,
彼得
答案 0 :(得分:2)
您需要为您的域模型创建另一个DbContext类。
使用相同的DbContext,UsersContext将来会引起很多问题。我有很多问题。事实证明,您需要为您的域模型提供单独的DbContext。
答案 1 :(得分:0)
感谢您的帮助。我终于明白了。默认的InitializeSimpleMembershipAttribute类适用于为简单成员资格创建所需的表(和列)。您创建自己的初始化类,该类继承自CreateDatabaseIfNotExists&lt;&gt;。现在,您可以删除并重新创建一个空数据库。运行应用程序时,将自动创建所有表。
彼得