在asp.net mvc网站开发中怎么用户验证

chuju999 2014-01-06 09:15:35
在asp.net web form开发中 可以用session["user"]记住登录用户的信息,
在mvc中也可以用session来记录用户,
但是我有一个问题:
既然有那么多个行为(ActionResult),如果手动的在每个ActionResult中写
public ActionResult MyAction()
{
if(session["user"]!=null)
{
......
}
else
{
rediect("login")
}
}
这样子实在太过于重复了,我要怎么写才能简化代码???
...全文
583 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
chuju999 2014-01-08
  • 打赏
  • 举报
回复
引用 5 楼 ltcszk 的回复:
[quote=引用 2 楼 u012779901 的回复:] [quote=引用 1 楼 kongwei521 的回复:] http://www.cnblogs.com/dozer/archive/2010/04/12/MVC-DataAnnotations.html 写一个方法传递进去 控件名称以此来判断写一个Actionresult应该就可以把
您这样写,我觉得还是不妥,以前写asp.net web form的时候,是写一个基类basePage, 在基类里面的构造函数就判断session["user"]的情况, 然后每个页面继承basePage即可。 一个controller里面有多个ActionResult,还是要多次调用判断函数才行! 至于您说的:传递控件名称 我不太明白您的意思。。。[/quote] mvc里也可以用基类,继承controller就可以了 不过mvc一般推荐用Attribute,进行权限管理[/quote] 大侠我现在明白了您的意思了,还有一些问题: 现在管理员的控制器用的是[Authorzie(Roles="admin")] 而普通用户的控制器用的是[Authorzie(Roles="normal")] 那么在登录的时候怎么告诉Authorize角色是哪一种啊??
枫飞叶 2014-01-07
  • 打赏
  • 举报
回复
写成一个方法调用下 就可
ltcszk 2014-01-07
  • 打赏
  • 举报
回复
引用 2 楼 u012779901 的回复:
[quote=引用 1 楼 kongwei521 的回复:] http://www.cnblogs.com/dozer/archive/2010/04/12/MVC-DataAnnotations.html 写一个方法传递进去 控件名称以此来判断写一个Actionresult应该就可以把
您这样写,我觉得还是不妥,以前写asp.net web form的时候,是写一个基类basePage, 在基类里面的构造函数就判断session["user"]的情况, 然后每个页面继承basePage即可。 一个controller里面有多个ActionResult,还是要多次调用判断函数才行! 至于您说的:传递控件名称 我不太明白您的意思。。。[/quote] mvc里也可以用基类,继承controller就可以了 不过mvc一般推荐用Attribute,进行权限管理
threenewbee 2014-01-06
  • 打赏
  • 举报
回复
google asp.net mvc 验证过滤器
chuju999 2014-01-06
  • 打赏
  • 举报
回复
引用 1 楼 kongwei521 的回复:
http://www.cnblogs.com/dozer/archive/2010/04/12/MVC-DataAnnotations.html 写一个方法传递进去 控件名称以此来判断写一个Actionresult应该就可以把
您这样写,我觉得还是不妥,以前写asp.net web form的时候,是写一个基类basePage, 在基类里面的构造函数就判断session["user"]的情况, 然后每个页面继承basePage即可。 一个controller里面有多个ActionResult,还是要多次调用判断函数才行! 至于您说的:传递控件名称 我不太明白您的意思。。。
蝶恋花雨 2014-01-06
  • 打赏
  • 举报
回复
http://www.cnblogs.com/dozer/archive/2010/04/12/MVC-DataAnnotations.html 写一个方法传递进去 控件名称以此来判断写一个Actionresult应该就可以把

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧