我正在使用C#和SQL Server / EF6构建ASP.NET MVC5应用程序。
我有一个包含50列的表格。在应用程序的第一步中,我只需要将12列的值发布到此表中。其余的列将沿应用程序流并根据用户选择保持为空或填充(通过EF6中的更新查询)。
如何在EF6中实现发布请求而不抛出System.ArgumentNullException异常:值不能为空?
public S_REQUEST Save_S_Without_All_Data(SViewModel vm)
{
var s_request = new S_REQUEST
{
//mapping model properties with viewmodel properties
};
return s_request;
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult PostAction(SViewModel vm)
{
switch (selectedStep){
//other cases
case "2":
try {
if (ModelState.IsValid)
{
var s_request = Save_S_Without_All_Data(vm);
db.S_REQUEST.Add(s_request);
//add DELEGATED_EMPLOYEE_ID
var s_request_extra_data = new S_REQUEST
{
DELEGATED_EMPLOYEE_ID = vm.DelegatedTeamMemberId
};
db.S_REQUEST.Add(s_request_extra_data);
db.SaveChanges();
return View("Success");
}
return View(vm);
}
catch
{
ModelState.AddModelError("SaveError", "Unable to save changes.");
}
break;
//other cases
}