Roles.GetRolesForUser()返回空数组

时间:2012-06-18 17:44:44

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

我正在使用Roles.GetRolesForUser(),当我调用它时,我得到{string[0]}。但是,当我输入用户名作为硬编码字符串时,Roles.GetRolesForUser("theloggedinusersname"),我得到{string[2]} [0]: "AccountingAdmin" [1]: "Admin"。为了记录,我还获得Roles.IsUserInRoleUser.Identity的值。

以下是我设置Web.config的方法:

<roleManager enabled="true" defaultProvider="DefaultRoleProvider">
    <providers>
        <clear/>
        <add connectionStringName="DefaultConnection" 
             applicationName="[MyAppName]" 
             name="DefaultRoleProvider" 
             type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=[MyPublicKeyToken]" />
    </providers>
</roleManager>

线索:“theloggedinusersname”不等于User.Identity.Name

0 个答案:

没有答案