首页 > 代码库 > asp.net identity 2.2.0 中角色启用和基本使用(四)
asp.net identity 2.2.0 中角色启用和基本使用(四)
创建角色相关视图
第一步:添加视图 打开RolesAdminController.cs 将鼠标移动到public ActionResult Index()上 右键》添加视图 系统会弹出对话框 什么也不用改 直接“确定”
第二步:在创建的视图上定义一个公开枚举模型
在第一行添加 @model IEnumerable<Microsoft.AspNet.Identity.EntityFramework.IdentityRole>
第三步:建立页面视图模板,代码完成后如下。
@model IEnumerable <Microsoft .AspNet.Identity.EntityFramework.IdentityRole>@{ ViewBag.Title = "角色列表";}<h2>角色列表</h2><p> @Html.ActionLink("新建角色", "Create")</p><table class="table"> <tr> <th> @Html.DisplayNameFor(model => model.Name) </th> <th> </th> </tr> @foreach (var item in Model) { <tr> <td> @Html.DisplayFor(modelItem => item.Name) </td> <td> @Html.ActionLink("编辑角色", "Edit", new { id = item.Id }) | @Html.ActionLink("角色详情", "Details", new { id = item.Id }) | @Html.ActionLink("删除角色", "Delete", new { id = item.Id }) </td> </tr> }</table>
重复上述步骤完成其他视图模板。
需要注意的是
1、Create视图模板和Edit视图模板 顶部定义的是一个xxxx(项目名).Models.RoleViewModel模型。
2、Delete视图模板和Details视图模板 顶部定义的是一个Microsoft.AspNet.Identity.EntityFramework.IdentityRole模型。
完成后的相关代码如下:
Create视图模板
@model xxxx(项目名).Models.RoleViewModel@{ ViewBag.Title = "创建角色";}<h2>创建角色</h2>@using (Html.BeginForm()){ @Html.AntiForgeryToken() <div class="form-horizontal"> <h4>Role.</h4> <hr /> @Html.ValidationSummary(true) <div class="form-group"> @Html.LabelFor(model => model.Name, new { @class = "control-label col-md-2" }) <div class="col-md-10"> @Html.TextBoxFor(model => model.Name, new { @class = "form-control" }) @Html.ValidationMessageFor(model => model.Name) </div> </div> <div class="form-group"> <div class="col-md-offset-2 col-md-10"> <input type="submit" value=http://www.mamicode.com/"Create" class="btn btn-default" /> </div> </div> </div>}<div> @Html.ActionLink("返回角色列表", "Index")</div>@section Scripts { @Scripts.Render("~/bundles/jqueryval")}
Edit视图模板:
@model xxxx.Models.RoleViewModel@{ ViewBag.Title = "编辑角色";}<h2>编辑角色</h2>@using (Html.BeginForm()){ @Html.AntiForgeryToken() <div class="form-horizontal"> <h4>Roles.</h4> <hr /> @Html.ValidationSummary(true) @Html.HiddenFor(model => model.Id) <div class="form-group"> @Html.LabelFor(model => model.Name, new { @class = "control-label col-md-2" }) <div class="col-md-10"> @Html.TextBoxFor(model => model.Name, new { @class = "form-control" }) @Html.ValidationMessageFor(model => model.Name) </div> </div> <div class="form-group"> <div class="col-md-offset-2 col-md-10"> <input type="submit" value=http://www.mamicode.com/"Save" class="btn btn-default" /> </div> </div> </div>}<div> @Html.ActionLink("返回角色列表", "Index")</div>@section Scripts { @Scripts.Render("~/bundles/jqueryval")}
Details视图模板:
@model Microsoft.AspNet.Identity.EntityFramework.IdentityRole@{ ViewBag.Title = "角色详情";}<h2>角色详情</h2><div> <h4>角色</h4> <hr /> <dl class="dl-horizontal"> <dt> @Html.DisplayNameFor(model => model.Name) </dt> <dd> @Html.DisplayFor(model => model.Name) </dd> </dl></div><h4>List of users in this role</h4>@if (ViewBag.UserCount == 0){ <hr /> <p>No users found in this role.</p>}<table class="table"> @foreach (var item in ViewBag.Users) { <tr> <td> @item.UserName </td> </tr> }</table><p> @Html.ActionLink("编辑角色", "Edit", new { id = Model.Id }) | @Html.ActionLink("返回角色列表", "Index")</p>
Delete视图模板:
@model Microsoft.AspNet.Identity.EntityFramework.IdentityRole@{ ViewBag.Title = "删除角色";}<h2>删除角色</h2><h3>Are you sure you want to delete this Role? </h3><p>Deleting this Role will remove all users from this role. It will not delete the users.</p><div> <h4>Role.</h4> <hr /> <dl class="dl-horizontal"> <dt> @Html.DisplayNameFor(model => model.Name) </dt> <dd> @Html.DisplayFor(model => model.Name) </dd> </dl> @using (Html.BeginForm()) { @Html.AntiForgeryToken() <div class="form-actions no-color"> <input type="submit" value=http://www.mamicode.com/"Delete" class="btn btn-default" /> | @Html.ActionLink("返回角色列表", "Index") </div> }</div>
至此,RoleAdmin的相关视图模板就做完了。
asp.net identity 2.2.0 中角色启用和基本使用(四)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。