1、添加:
View:
@model HSLT.Model.Admin
@Html.AntiForgeryToken()//用于阻止伪造请求
Controller:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include="UserId,UserName,UserPass,RealName")] Model.Admin admin)
{
if (ModelState.IsValid)
{
admin.LastTime = DateTime.Now;
bll.Add(admin);
return RedirectToAction("Index");
}
return View(admin);
}
2、编辑:
View:同添加
Controller:
①加载编辑页面
public ActionResult Edit(int? id)
{
if (id == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
Model.Admin admin = bll.GetModel(id.Value);
if (admin != null)
{
return View(admin);
}
else
{
return HttpNotFound("没有符合条件的信息");
}
}
②编辑操作
[ValidateAntiForgeryToken]
[HttpPost]
public ActionResult Edit(Model.Admin model)
{
//获取编辑的ID
int userId = int.Parse(ControllerContext.RouteData.GetRequiredString("id"));
//根据ID获取实体
Model.Admin admin = bll.GetModel(userId);
//需要更新的字段
List<string> listUpdateModel = new List<string>() { "UserName", "RealName" };
//如果密码为空则不更新密码
if (!string.IsNullOrEmpty(model.UserPass))
listUpdateModel.Add("UserPass");
//根据需要更新的字段更新实体
if (TryUpdateModel(admin,listUpdateModel.ToArray()))
{
if (ModelState.IsValid)
{
bll.Update(admin);
return RedirectToAction("List");
}
}
else
{
ModelState.AddModelError("", "修改失败");
}
return View(admin);
}