我有一个标准的 ASP.NET MVC4 应用程序,我正在使用 EF Code First 构建 DAL。目前大约有 20-30 个模型,我正处于想要集成用户和角色的地步。我对此进行了大量研究,但似乎仍然无法使其正常工作。这是我现在所拥有的:
在我的数据库初始化类中(每次更改模型时都会调用)我用一堆数据播种它,然后调用它:
public class DbInit : DropCreateDatabaseIfModelChanges<TrackerContext>
{
protected override void Seed(TrackerContext context)
{
...seed stuff and save it...
WebSecurity.InitializeDatabaseConnection("TrackerContext", "User", "Id", "UserName", autoCreateTables: true);
}
}
通过调试它不会抛出任何错误,我可以确认它正在命中这行代码。我的用户模型如下所示:
public class User
{
public int Id { get; set; }
public string UserName { get; set; }
public string Password { get; set; }
public string Email { get; set; }
public PasswordQuestion PasswordQuestion{ get; set; }
public string PasswordAnswer { get; set; }
public string Type { get; set; }
}
从我读过的所有内容来看,我认为这应该是我需要做的所有事情,但我有两个问题:
没有加载成员资格表
即使我引用 WebMatrix.WebData dll,我的配置似乎也抛出了错误
这是配置部分:
<roleManager enabled="true" defaultProvider="SimpleRoleProvider">
<providers>
<clear/>
<add name="SimpleRoleProvider" type="WebMatrix.WebData.SimpleRoleProvider, WebMatrix.WebData"/>
</providers>
</roleManager>
<membership defaultProvider="SimpleMembershipProvider">
<providers>
<clear/>
<add name="SimpleMembershipProvider" type="WebMatrix.WebData.SimpleMembershipProvider, WebMatrix.WebData" />
</providers>
</membership>
我在这里想念什么?