五、Asp.Net MVC4.0开发CMS系统案例之用户信息修改模块
2014-11-27 10:28
791 查看
用户信息Modely已经有了,所以不需要编写这块,直接实现Contraller即可。
首页要修改用户个人信息必须是在登录状态下才能有权限,因此我们当客户登录成功之后,默认进入个人的管理中心。所以需要有个默认的Action.
调整View页面代码布局与内容:
再从数据库读取当前登录名的数据Find,最后执行更新Update.
本文出自 “奔跑的小蜗牛-原创空间” 博客,请务必保留此出处http://songjiahao.blog.51cto.com/4433831/1583093
首页要修改用户个人信息必须是在登录状态下才能有权限,因此我们当客户登录成功之后,默认进入个人的管理中心。所以需要有个默认的Action.
/// <summary> /// 默认的用户个人信息中心 /// </summary> /// <returns></returns> [UserAuthorize] public ActionResult Default() { var _userInfo = userRpy.Find(LoginName); ViewData["UserType"] = Common.Function.getUserTypeList(_userInfo.UserType); ViewData["Flag"] = Common.Function.getUserFlagList(_userInfo.Flag); return View(_userInfo); }读取当期登录人的所有用户信息,返回到View页面显示。点击右键添加视图
调整View页面代码布局与内容:
@model Hillstone.Models.SysComUser @{ ViewBag.Title = "个人信息"; } <div class="user-nav float-left">@Html.Partial("PartialUserNav")</div> <fieldset class="float-left"> <legend>个人信息</legend> <div class="display-label"> @Html.DisplayNameFor(model => model.LoginName) </div> <div class="display-field"> @Html.DisplayFor(model => model.LoginName) </div> <div class="display-label"> @Html.DisplayNameFor(model => model.UserName) </div> <div class="display-field"> @Html.DisplayFor(model => model.UserName) </div> <div class="display-label"> @Html.DisplayNameFor(model => model.OrderNo) </div> <div class="display-field"> @Html.DisplayFor(model => model.OrderNo) </div> <div class="display-label"> @Html.DisplayNameFor(model => model.UserType) </div> <div class="display-field"> @ViewData["UserType"].ToString() </div> <div class="display-field"> @Html.DisplayNameFor(model => model.Flag) </div> <div class="display-label"> @ViewData["Flag"].ToString() </div> <div class="display-label"> @Html.DisplayNameFor(model => model.UnitId) </div> <div class="display-field"> @Html.DisplayFor(model => model.UnitId) </div> <div class="display-label"> @Html.DisplayNameFor(model => model.PosId) </div> <div class="display-field"> @Html.DisplayFor(model => model.PosId) </div> <div class="display-label"> @Html.DisplayNameFor(model => model.CreatedUserName) </div> <div class="display-field"> @Html.DisplayFor(model => model.CreatedUserName) </div> <div class="display-label"> @Html.DisplayNameFor(model => model.CreatedDate) </div> <div class="display-field"> @Html.DisplayFor(model => model.CreatedDate) </div> </fieldset> <p> @Html.ActionLink("Edit", "Edit", new { id=Model.UserId }) | @Html.ActionLink("Back to List", "Index") </p>二、用户信息修改
#region 修改信息 /// <summary> /// 修改用户信息默认页面 /// </summary> /// <returns>URL</returns> [UserAuthorize] public ActionResult UserChangeInfo() { var _userInfo = userRpy.Find(LoginName); ViewData["Flag"] = Common.Function.getUserFlagList(_userInfo.Flag); return View(_userInfo); } /// <summary> /// 提交修改用户数据 /// </summary> /// <param name="userInfo">用户数据实体</param> /// <returns>URL</returns> [UserAuthorize] [HttpPost] public ActionResult UserChangeInfo(SysComUser userInfo) { ViewData["Flag"] = Common.Function.getUserFlagList(userInfo.Flag); //对要做修改的用户,检查输入的密码是否正确 if (userRpy.Authentication(LoginName, userInfo.Password) == 0) { //读取数据库中该用户是否还存在 var _userInfo = userRpy.Find(userInfo.LoginName); _userInfo.UserName = userInfo.UserName; _userInfo.UserType = userInfo.UserType; _userInfo.UnitId = userInfo.UnitId; _userInfo.PosId = userInfo.PosId; _userInfo.Flag = userInfo.Flag; if (userRpy.Update(_userInfo)) { ModelState.AddModelError("Message", "修改成功!"); return View(); } else { ModelState.AddModelError("Message", "修改失败!"); return View(); } } else { ModelState.AddModelError("Password", "输入的密码错误!"); return View(); } } #endregion修改用户信息时候首先确认登录身份[UserAuthorize],其次输入密码的是否正确Authentication
再从数据库读取当前登录名的数据Find,最后执行更新Update.
@model Hillstone.Models.SysComUser @{ ViewBag.Title = "UserChangeInfo"; Layout = "~/Views/Shared/_Layout.cshtml"; } <h2>UserChangeInfo</h2> @using (Html.BeginForm()) { @Html.AntiForgeryToken() @Html.ValidationSummary(true) <div class="user-nav float-left">@Html.Partial("PartialUserNav")</div> <fieldset class="float_left"> <legend>SysComUser</legend> @Html.HiddenFor(model => model.UserId) <div class="editor-label"> @Html.LabelFor(model => model.LoginName) </div> <div class="editor-field"> @Html.EditorFor(model => model.LoginName) @Html.ValidationMessageFor(model => model.LoginName) @Html.DisplayDescriptionFor(model=>model.LoginName) </div> <div class="editor-label"> @Html.LabelFor(model => model.UserName) </div> <div class="editor-field"> @Html.EditorFor(model => model.UserName) @Html.ValidationMessageFor(model => model.UserName) @Html.DisplayDescriptionFor(mode => mode.UserType) </div> <div class="editor-label"> @Html.LabelFor(model => model.Password) </div> <div class="editor-field"> @Html.EditorFor(model => model.Password) @Html.ValidationMessageFor(model => model.Password) </div> <div class="editor-label"> @Html.LabelFor(model => model.OrderNo) </div> <div class="editor-field"> @Html.EditorFor(model => model.OrderNo) @Html.ValidationMessageFor(model => model.OrderNo) </div> <div class="editor-label"> @Html.LabelFor(model => model.UserType) </div> <div class="editor-field"> @Html.RadioButtonFor(model=>model.UserType,0) 企业内部 @Html.RadioButtonFor(model=>model.UserType,1) 企业外部 </div> <div class="editor-label"> @Html.LabelFor(model => model.Flag) </div> <div class="editor-field"> @Html.DropDownListFor(model=>model.Flag,(List<SelectListItem>)ViewData["Flag"]) @Html.ValidationMessageFor(model => model.Flag) </div> <div class="editor-label"> @Html.LabelFor(model => model.UnitId) </div> <div class="editor-field"> @Html.EditorFor(model => model.UnitId) @Html.ValidationMessageFor(model => model.UnitId) </div> <div class="editor-label"> @Html.LabelFor(model => model.PosId) </div> <div class="editor-field"> @Html.EditorFor(model => model.PosId) @Html.ValidationMessageFor(model => model.PosId) </div> <div class="editor-label"> @Html.LabelFor(model => model.CreatedUserId) </div> <div class="editor-field"> @Html.EditorFor(model => model.CreatedUserId) @Html.ValidationMessageFor(model => model.CreatedUserId) </div> <div class="editor-label"> @Html.LabelFor(model => model.CreatedUserName) </div> <div class="editor-field"> @Html.EditorFor(model => model.CreatedUserName) @Html.ValidationMessageFor(model => model.CreatedUserName) </div> <div class="editor-label"> @Html.LabelFor(model => model.CreatedDate) </div> <div class="editor-field"> @Html.EditorFor(model => model.CreatedDate) @Html.ValidationMessageFor(model => model.CreatedDate) </div> <p> <input type="submit" value="Save" />@Html.ValidationMessage("Message") </p> </fieldset> } <div> @Html.ActionLink("Back to List", "Index") </div> @section Scripts { @Scripts.Render("~/bundles/jqueryval") }radioButton和DropDownList的控件在编辑页面使用方法:
<div class="editor-field"> @Html.RadioButtonFor(model=>model.UserType,0) 企业内部 @Html.RadioButtonFor(model=>model.UserType,1) 企业外部 </div>
<div class="editor-field"> @Html.DropDownListFor(model=>model.Flag,(List<SelectListItem>)ViewData["Flag"]) @Html.ValidationMessageFor(model => model.Flag) </div>
本文出自 “奔跑的小蜗牛-原创空间” 博客,请务必保留此出处http://songjiahao.blog.51cto.com/4433831/1583093
相关文章推荐
- 三、Asp.Net MVC4.0开发CMS系统案例之用户登录模块开发
- 四、Asp.Net MVC4.0开发CMS系统案例之密码修改模块开发
- 七、Asp.Net MVC4.0开发CMS系统案例之用户群组模块
- 二、Asp.Net MVC4.0开发CMS系统案例之用户注册模块开发
- 六、Asp.Net MVC4.0开发CMS系统案例之路由规则修改
- 八、Asp.Net MVC4.0开发CMS系统案例之栏目内容模型管理
- 【Android】用户登录注册界面开发及用户信息管理案例代码详解
- 【Android】用户登录注册界面开发及用户信息管理案例代码详解
- MVC案例,开发用户登录模块(一)
- 【Android】用户登录注册界面开发及用户信息管理案例代码详解
- 案例--编写一个Servlet,显示已有用户信息,可添加/修改、删除帐务帐号信息,并重新显示新页面
- 【Android】用户登录注册界面开发及用户信息管理案例代码详解
- 通达OA 对通达2015版微信查询用户信息模块升级开发(图文)
- [置顶] Struts2+Hibernate4开发学生信息管理功能--(三)用户登录模块
- 方维分享系统二次开发,tip.htm,修改调用的当前用户的信息
- 微信开发第5章 通过accesstoken获取用户基本信息并修改用户备注
- C# 分层开发的案例 学生管理系统 实现用户的登录和修改密码
- 通达OA二次开发 对通达2015版微信查询用户信息模块升级开发(图文)
- 【Android】用户登录注册界面开发及用户信息管理案例代码详解
- 通达OA 对通达2015版微信查询用户信息模块升级开发(图文)