2013-08-25 57 views
0

我想写我自己的角色提供程序,但是,它说名称空间丢失,我做错了什么。我在C#中的MVC的Visual Studio 2012自定义角色提供程序名称空间丢失

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.Mvc; 
using System.Web.Security.RoleProvider; //this gave me an error 
using MyProject.Models; 

namespace MyProject.Controllers 
{ 
    public class MyRoleProvider : RoleProvider 
    { 
     // 
     // GET: /RoleProvider/ 
     private DefaultConnection db = new DefaultConnection(); 

     public ActionResult Index() 
     { 
      return View(); 
     } 
     public override bool IsUserInRole(string username, string roleName) 
     { 
      // Return status defaults to false 
      bool ret = false; 

      if (RoleExists(roleName)) 
      { 
       { 
        int c = (from m in db.Users 
          where m.userid == username && 
          m.role == roleName 
          select m).Count(); 

        if (c > 0) 
         ret = true; 
       } 
      } 
      return ret; 
     } 
     public override bool RoleExists(string roleName) 
     { 
      bool ret = false; 

      // If the specified role doesn't exist 
      if (!GetAllRoles().Contains(roleName)) 
       ret = true; 

      return ret; 
     } 
     public override string[] GetAllRoles() 
     { 
      string[] roles = null; 
      roles = (from roleadmin in db.Users 
        select roleadmin.userid).ToArray(); 
      return roles; 
     } 
    } 
} 

回答

1

编码只需使用

using System.Web.Security; 

,而不是添加类名的使用。

相关问题