1

我正在使用 SimpleMembership 和 on Application_Start(),我正在执行以下代码:

WebSecurity.InitializeDatabaseConnection("MyContext", "User", 
    "Id", "Email", autoCreateTables: true);

但是,在我的控制器中,当我执行以下代码行时:

bool isAdmin = Roles.IsUserInRole("Admin");

我收到以下错误:

列名“用户 ID”无效。

它会在哪里获得对 UserId 列的引用?

4

2 回答 2

0

你设置网络配置了吗?

<roleManager enabled="true" cacheRolesInCookie="true">
    <providers>
        <clear />
        <add connectionStringName="YourDbConnectionString" 
             applicationName="MySampleAppName"
             name="AspNetSqlRoleProvider" 
             type="System.Web.Security.SqlRoleProvider" />
    </providers>
</roleManager>
于 2013-03-09T16:31:20.053 回答
0

发现问题...

pages_Membership 有一个名为“Id”的列,而不是“UserId”。多哈。

于 2013-03-09T16:50:27.557 回答