我希望在asp.net mvc中创建控制器类,其中某些视图将由特定用户访问,其他视图将由其他用户访问。
public class HomeController : Controller
{
public ActionResult Page1()
{
return View();
}
public ActionResult Page2()
{
return View();
}
}
上面的代码例如Page1()将被x用户访问,Page2()将被y用户访问。我想创建一个登录部分.cshtml代码,x用户只能看到Page1()标题,而不是Page2(),而y用户只能看到Page2(),而不能看到网站中的Page1()标题。怎么做?
答案 0 :(得分:0)
使用[Authorize]
操作属性
public class HomeController : Controller
{
[Authorize(Users="x")]
public ActionResult Page1()
{
return View();
}
[Authorize(Users="y")]
public ActionResult Page2()
{
return View();
}
}
请参阅以下MVC中的身份验证和授权链接。
http://nerddinnerbook.s3.amazonaws.com/Part9.htm
http://msdn.microsoft.com/en-us/library/system.web.mvc.authorizeattribute.aspx
您可以使用SQLRoleProvider
进行授权或拥有自定义授权。
或使用自定义自定义授权属性
http://msdn.microsoft.com/en-us/library/ee707357%28v=vs.91%29.aspx