MVC4制作网站教程第三章浏览用户组操作3.1
一、用户
二、用户组
2.1浏览用户组
在开始做浏览用户组之前,首先要考虑权限问题。浏览、添加、修改、删除用户组必须是系统管理员才能进行的操作行动上必须验证是否是管理员,因此添加一个管理授权。在扩展扩张文件夹上点右键添加类AdminAuthorizeAttribute ",继承自AuthorizeAttribute。
重写AuthorizeCore(Httpcontextbase Httpcontext),里面什么代码都不写直接返回真的。
因为管理员这块的功能还没做,目的是不验证管理员就可以进行添加、删除、浏览,权限验证代码等以后写管理员这块时再加。
使用系统;系统命名空间网络。Mvc{ ///summary //管理员权限验证////摘要公共类adminauthorizeattribute : authorizeattribute { protected override bool AuthorizeCore(Httpcontextbase Httpcontext){ return true;} }} 修改[列表]操作,给其加上管理员权限验证。
///摘要///用户组列表////summary ///param name='Id '用户组类型/param///returns/returns[AdminAuthorize]公共操作结果列表(int Id=-1){用户组rsy=新用户组存储库();iqueryableuserGrouP _ userGrouPif(Id==-1)_ userGrouP=userGrouPsy .list();else _ userGroup=userGroupRsy .列表(身份证);返回视图(_用户组);} id是用户组类型,因为用户组类型是枚举类型,从0起始,所以这里浏览地址不带编号参数时设为-1显示所有用户组,当如数编号参数时显示指定类型的用户组。
右键添加强类型"用户组"视图List.cshtml,修改生成的代码。
@ model IEnumerableNinesky .模型。用户组@{视图包标题='用户组列表;布局=' ~/视图/布局/_管理。“cshtml”;} div class=' left ' div class=' top '/div左侧列表/div class=' split '/div class=' workspace ' div class=' inside ' div class=' notebar ' img alt=' src=' http : ~/Skins/Default/Manage/Images/userGrouP。gif '/用户组列表/div div class='buttonbar'@Html .ActionLink('添加用户组、"添加"、"用户组"/div表tr th @Html .显示名称(型号=型号.名称)/th @ Html .显示名称(型号=型号.type)/th @ Html .显示名称(型号=型号.描述)/th/th/tr @ foreach(模型中的定义变量项目){ tr td @Html .显示(模型项目=项目.名称)/td td @Html .显示(模型项目=项目.Type) /td td @Html .显示(模型项目=项目.描述)/td td @Html .ActionLink('修改,'编辑,新{ id=item .UserGroupId }) | @Html .ActionLink('删除、"删除",新{ id=item .userGroupId })/TD/tr }/table/div/div class=' clear '/div运行浏览器里看下效果,还行。
现在应该添加一个下拉菜单,可以选择不同的用户组类型来显示相应类型的用户组
在【用户组控制器】添加属性类型选择列表
///摘要///用户组类型的选择列表列表////摘要公共列表选择列表项类型选择列表{ get { ListSelectListItem _ items=new ListSelectListItem();_项目。添加(新的选择列表项{文本=用户组类型.匿名ToString(),Value=((int)UserGroupType .匿名)。ToString()});_项目。添加(新的选择列表项{文本=用户组类型.有限。ToString(),Value=((int)UserGroupType .有限)。ToString()});_项目。添加(新的选择列表项{文本=用户组类型.正常。ToString(),Value=((int)UserGroupType .正常)。ToString()});_项目。添加(新的选择列表项{文本=用户组类型.特殊ToString(),Value=((int)UserGroupType .特殊)。ToString()});return _ items} }修改[列表]操作代码
///摘要///用户组列表////summary ///param name='Id '用户组类型/param///returns/returns[AdminAuthorize]公共操作结果列表(int Id=-1){用户组rsy=新用户组存储库();iqueryableuserGrouP _ userGrouPif(Id==-1)_ userGrouP=userGrouPsy .list();else _ userGroup=userGroupRsy .列表(身份证);var _ typeLists=TypeSelectList_类型列表。插入(0,新的选择列表项{文本='全部,Value='-1 ' });if(_ TYPelist).任何(t=t .值==身份证.ToString()))_类型列表。单路默认(t=t。值==身份证.ToString()).选择=真视图数据。添加(“组类型列表”,_类型列表返回视图(_用户组);} 在L.cshtml视图里@Html .ActionLink('添加用户组、"添加"、"用户组")后面添加用户组类型:@Html .DropDownList('GroupTypeList ')
底部添加
脚本类型=' text/JavaScript ' $(' # GroupTypeList ').change(function(){ window。位置。href='/用户组/列表/' $(this))。儿童(“option:selected”).val();})/脚本完成后的List.cshtml代码如下:
@ model IEnumerableNinesky .模型。用户组@{视图包标题='用户组列表;布局=' ~/视图/布局/_管理。“cshtml”;} div class=' left ' div class=' top '/div左侧列表/div class=' split '/div class=' workspace ' div class=' inside ' div class=' notebar ' img alt=' src=' http : ~/Skins/Default/Manage/Images/userGrouP。gif '/用户组列表/div div class='buttonbar'@Html .ActionLink('添加用户组、"添加"、"用户组")用户组类型:@Html .DropDownList(' GroupTypeList ')/div table tr th @ Html .显示名称(型号=型号.名称)/th @ Html .显示名称(型号=型号.type)/th @ Html .显示名称(型号=型号.描述)/th/th/tr @ foreach(模型中的定义变量项目){ tr td @Html .显示(模型项目=项目.名称)/td td @Html .显示(模型项目=项目.Type) /td td @Html .显示(模型项目=项目.描述)/td td @Html .ActionLink('修改,'编辑,新{ id=item .UserGroupId }) | @Html .ActionLink('删除、"删除",新{ id=item .userGroupId })/TD/tr }/table/div/div class=' clear '/div脚本类型=' text/JavaScript ' $(' # GroupTypeList ').change(function(){ window。位置。href='/用户组/列表/' $(this))。儿童(“option:selected”).val();})/脚本完成,浏览器中查看一下
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
版权声明:MVC4制作网站教程第三章浏览用户组操作3.1是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。