首页 > 代码库 > Asp.Net MVC Identity 2.2.1 使用技巧(五)
Asp.Net MVC Identity 2.2.1 使用技巧(五)
创建用户管理相关视图
1、添加视图
打开UsersAdminController.cs 将鼠标移动到public ActionResult Index()上 右键》添加视图 系统会弹出对话框 什么也不用改 直接“添加”。
2、在创建的视图上添加数据模型
在第一行添加 @model IEnumerable<xxxx(项目名).Models .ApplicationUser>。
3、建立Index页面视图模板,代码完成后如下:
1 @model IEnumerable<xxxx.Models.ApplicationUser> 2 @{ 3 ViewBag.Title = "用户列表"; 4 } 5 6 <h2>用户列表</h2> 7 8 <p> 9 @Html.ActionLink("新建用户", "Create")10 </p>11 <table class="table">12 <tr>13 <th>14 @Html.DisplayNameFor(model => model.UserName)15 </th>16 <th>17 18 </th>19 </tr>20 21 @foreach (var item in Model)22 {23 <tr>24 <td>25 @Html.DisplayFor(modelItem => item.UserName)26 </td>27 <td>28 @Html.ActionLink("编辑用户", "Edit", new { id = item.Id }) |29 @Html.ActionLink("用户详情", "Details", new { id = item.Id }) |30 @Html.ActionLink("删除用户", "Delete", new { id = item.Id })31 </td>32 </tr>33 }34 35 </table>
重复上述步骤完成其他视图模板。
需要注意的是 1、Create视图模板顶部定义的是@model xxxx.Models.RegisterViewModel模型
2、Edit视图模板顶部定义的是一个@model xxxx(项目名).Models.EditUserViewModel模型。
3、Delete视图模板和Details视图模板 顶部定义的是一个@model xxxx.Models.ApplicationUser模型。
完成后的相关代码如下:
Details/用户详情视图
1 @model xxxx.Models.ApplicationUser 2 3 @{ 4 ViewBag.Title = "用户详情"; 5 } 6 7 <h2>用户详情</h2> 8 9 <div>10 <h4>用户</h4>11 <hr />12 <dl class="dl-horizontal">13 <dt>14 @Html.DisplayNameFor(model => model.UserName)15 </dt>16 <dd>17 @Html.DisplayFor(model => model.UserName)18 </dd>19 </dl>20 </div>21 <h4>该用户所在的角色:</h4>22 @if (ViewBag.RoleNames.Count == 0)23 {24 <hr />25 <p>这个用户没有设置角色。</p>26 }27 28 <table class="table">29 30 @foreach (var item in ViewBag.RoleNames)31 {32 <tr>33 <td>34 @item35 </td>36 </tr>37 }38 </table>39 <p>40 @Html.ActionLink("编辑用户", "Edit", new { id = Model.Id }) |41 @Html.ActionLink("返回用户列表", "Index")42 </p>
Create/创建用户视图
1 @model xxxx.Models.RegisterViewModel 2 @{ 3 ViewBag.Title = "创建用户"; 4 } 5 6 <h2>@ViewBag.Title.</h2> 7 8 @using (Html.BeginForm("Create", "UsersAdmin", FormMethod.Post, new { @class = "form-horizontal", role = "form" })) 9 {10 @Html.AntiForgeryToken() //创建防伪标记11 <h4>创建用户</h4>12 <hr />13 @Html.ValidationSummary("", new { @class = "text-error" })14 <div class="form-group">15 @Html.LabelFor(m => m.Email, new { @class = "col-md-2 control-label" })16 <div class="col-md-10">17 @Html.TextBoxFor(m => m.Email, new { @class = "form-control" })18 </div>19 </div>20 <div class="form-group">21 @Html.LabelFor(m => m.Password, new { @class = "col-md-2 control-label" })22 <div class="col-md-10">23 @Html.PasswordFor(m => m.Password, new { @class = "form-control" })24 </div>25 </div>26 <div class="form-group">27 @Html.LabelFor(m => m.ConfirmPassword, new { @class = "col-md-2 control-label" })28 <div class="col-md-10">29 @Html.PasswordFor(m => m.ConfirmPassword, new { @class = "form-control" })30 </div>31 </div>32 <div class="form-group">33 <label class="col-md-2 control-label">34 编辑用户角色35 </label>36 <div class="col-md-10">37 @foreach (var item in (SelectList)ViewBag.RoleId)38 {39 <input type="checkbox" name="SelectedRoles" value=http://www.mamicode.com/"@item.Value" class="checkbox-inline" />40 @Html.Label(item.Value, new { @class = "control-label" })41 }42 </div>43 </div>44 <div class="form-group">45 <div class="col-md-offset-2 col-md-10">46 <input type="submit" class="btn btn-default" value=http://www.mamicode.com/"创建用户" />47 </div>48 </div>49 }50 51 @section Scripts {52 @Scripts.Render("~/bundles/jqueryval")53 }
Edit/编辑用户视图
1 @model xxxx.Models.EditUserViewModel 2 3 @{ 4 ViewBag.Title = "编辑用户"; 5 } 6 7 <h2>编辑用户</h2> 8 9 10 @using (Html.BeginForm()) {11 @Html.AntiForgeryToken()12 13 <div class="form-horizontal">14 <h4>编辑用户</h4>15 <hr />16 @Html.ValidationSummary(true)17 @Html.HiddenFor(model => model.Id)18 19 <div class="form-group">20 @Html.LabelFor(model => model.Email, new { @class = "control-label col-md-2" })21 <div class="col-md-10">22 @Html.TextBoxFor(m => m.Email, new { @class = "form-control" })23 @Html.ValidationMessageFor(model => model.Email)24 </div>25 </div>26 <div class="form-group">27 @Html.Label("角色组", new { @class = "control-label col-md-2" })28 <span class=" col-md-10">29 @foreach (var item in Model.RolesList)30 {31 <input type="checkbox" name="SelectedRole" value=http://www.mamicode.com/"@item.Value" checked="@item.Selected" class="checkbox-inline" />32 @Html.Label(item.Value, new { @class = "control-label" })33 }34 </span>35 </div>36 37 <div class="form-group">38 <div class="col-md-offset-2 col-md-10">39 <input type="submit" value=http://www.mamicode.com/"保存" class="btn btn-default" />40 </div>41 </div>42 </div>43 }44 45 <div>46 @Html.ActionLink("Back to List", "Index")47 </div>48 49 @section Scripts {50 @Scripts.Render("~/bundles/jqueryval")51 }
Delete/删除用户视图
1 @model xxxx.Models.ApplicationUser 2 3 @{ 4 ViewBag.Title = "删除用户"; 5 } 6 7 <h2>删除用户</h2> 8 9 <h3>您确认要删除这个用户吗??</h3>10 <div>11 <h4>用户</h4>12 <hr />13 <dl class="dl-horizontal">14 <dt>15 @Html.DisplayNameFor(model => model.UserName)16 </dt>17 18 <dd>19 @Html.DisplayFor(model => model.UserName)20 </dd>21 </dl>22 23 @using (Html.BeginForm()) {24 @Html.AntiForgeryToken()25 26 <div class="form-actions no-color">27 <input type="submit" value=http://www.mamicode.com/"删除用户" class="btn btn-default" /> |28 @Html.ActionLink("返回用户列表", "Index")29 </div>30 }31 </div>
Asp.Net MVC Identity 2.2.1 使用技巧(五)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。