2010-07-23 74 views
0

我们是否需要添加任何引用或导入任何名称空间为 Roles.IsUserInRole(username,role) - >它没有给出正确的结果。asp.net mvc - > Roles.IsUserInRole(用户名,角色)

<% if(Model.Count < 1) 
    {%> 
     No User's Add Under You! 
    <% } else { 
     foreach (var item in Model) { %> 
    <tr class="tblheader"> 
     <th> User Name </th> 
     <th> Last Activity  </th> 
     <th> Administrator  </th> 
     <th> Base User </th> 
     <th> Print User </th> 
     <th> SDI User </th> 
     <th> Edit User   </th> 
    </tr> 
    <% if(Model.Count < 1) 
    {%> 
     No User's Add Under You! 
    <% } else { 
     foreach (var item in Model) { %> 

<td class="usertd"> 
      <%if(Roles.IsUserInRole(item.UserName,"Administrator")) { %> 
      <asp:Image runat="server" ImageUrl="~/Content/images/buttons/btn_rnd_save.png" alt="Yes" /> 
      <% } else { %> 
      <asp:Image runat="server" ImageUrl="~/Content/images/buttons/btn_Close.gif" alt="No" /> 
      <% } %>   
      </td> 
      <td class="usertd"> 
      <%if(Roles.IsUserInRole(item.UserName,"BaseUser")) { %> 
      <asp:Image runat="server" ImageUrl="~/Content/images/buttons/btn_rnd_save.png" alt="Yes" /> 
      <% } else { %> 
      <asp:Image runat="server" ImageUrl="~/Content/images/buttons/btn_Close.gif" alt="No" /> 
      <% } %>   
      </td> 

回答

0
System.Web.ApplicationServices 
0

System.Web.ApplicationServices用于.NET 4.0

System.Web.Security为.NET 3.5

+0

类保持不变,但他们它移动到不同的DLL /命名空间。 – 2010-07-23 20:06:12

+0

我试着添加它们两个,但它仍然是一样的 – Pinu 2010-07-23 20:08:32

0

您需要启用web.config中的RoleManager,因为它默认是禁用的。

<roleManager enabled="true" defaultProvider="AspNetSqlRoleProvider"> 
    <providers> 
    <clear/> 
    <add connectionStringName="ApplicationServices" applicationName="/" name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> 
    </providers> 
</roleManager> 
+0

我做了这个链接中提到的所有东西,但它仍然做同样的事情?还有什么我需要看? – Pinu 2010-07-23 20:26:23

+0

您是否创建了ASP.NET安全数据库?或者,您是否使用Windows Active Directory提供程序?你有认证(登录/注销)工作吗?你分配了用户角色? – GalacticCowboy 2010-07-23 20:40:21

+0

我正在使用ASP.NET数据库,其中一个由asp.net成员资格提供程序提供。我能够登录,并且我有大约80个用户添加到数据库中,并创建了5个角色。 – Pinu 2010-07-23 21:09:43

0

如果您在

IsUserInRole
处设置断点,它是否命中?