正試圖使用表單向數據庫添加一些數據。將數據添加到使用MVC的數據庫4
我已經有了很少的數據,並設法得到編輯工作,但增加了有問題的技巧。
這是我的編輯代碼在數據庫中的數據進行編輯:
[HttpPost]
public ActionResult Save(M2Portal.Areas.Admin.Models.Users.Roles roleForm)
{
try
{
if (ModelState.IsValid)
{
if (Mode == "Add")
{
****This is where my add code goes*******
}
else
{
var role = Srvctx.Roles.FirstOrDefault(w => w.RoleID == roleForm.RoleId);
role.RoleName = roleForm.RoleName;
role.RoleDescription = roleForm.RoleDescription;
Srvctx.SubmitChanges();
}
return RedirectToAction("RoleManagement");
}
return RedirectToAction("RoleManagement");
}
catch (Exception e)
{
return RedirectToAction("RoleManagement");
}
}
這是模型代碼:
這是爲補充。
public Roles()
{
Mode = "Add";
RoleId = 0;
RoleDescription = "";
RoleName = "";
CustomerBlacklist = new List<vw_RoleCustomerBlacklist>();
}
這是用於編輯:哪些工作。
public Roles(int roleId)
{
Mode = "Edit";
//RoleId = roleId;
RoleId = roleId;
RoleName = _m2Sctx.Roles.Where(s => s.RoleID == RoleId).Select(c => c.RoleName).FirstOrDefault();
RoleDescription = _m2Sctx.Roles.Where(s => s.RoleID == RoleId).Select(c => c.RoleDescription).FirstOrDefault();
CustomerBlacklist = _m2Sctx.vw_RoleCustomerBlacklists.Where(s => s.RoleId == roleId).ToList();
CustName = CustName;
}
所以現在我正在使用添加功能,這是有問題。
到表單中添加新數據...任何想法:
if (Mode == "Add")
{
****This is where my add code goes*******
}
你可以看到我的編輯是如何設置的,但對於添加其完全不同的,有我在哪裏罰款難...
不要添加'Mode'屬性,只需檢查'Id'屬性的值即可。如果它的零,那麼它的新和應該被添加,否則它的存在。而不要在你的構造函數中使用所有那些數據庫邏輯。所有你需要的是'Role role = _m2Sctx.Roles.Where(s => s.RoleID == someValue);返回查看(角色);' – 2014-10-30 01:24:06