我使用的jqGrid模式窗體添加和表格的編輯行。我使用實體框架和數據庫優先方法從現有數據庫創建模型。當我添加或編輯行時,行會被正確添加或編輯並正確保存在數據庫中,當我在jqGrid中檢索添加或編輯的行和視圖時,它們會正確顯示。不過,唯一的問題是,當我添加或編輯,它拋出錯誤狀態:「內部服務器錯誤」。錯誤代碼:500以模式形式。錯誤狀態:'內部服務器錯誤'。錯誤代碼:500 - jqGrid的ASP.NET MVC
任何人都知道爲什麼會發生這種情況?由於添加或編輯正常發生,是否有一種方法可以忽略此錯誤消息並使其不顯示?
任何幫助,非常感謝!
編輯:
public ActionResult Create(string oper, string id, Employee employee)
{
try
{
if (oper == "add")
{
if (ModelState.IsValid)
{
db.Employees.Add(employee);
db.SaveChanges();
return RedirectToAction("Index");
}
}
if (oper == "edit")
{
if (ModelState.IsValid)
{
db.Entry(employee).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
}
if (oper == "del")
{
Employee employees = db.Employees.Find(Int32.Parse(id));
db.Employees.Remove(employees);
db.SaveChanges();
return RedirectToAction("Index");
}
}
catch (InvalidOperationException ex)
{
}
catch (Exception e)
{
}
}
您應該調試在添加/編輯操作時將在服務器端執行的代碼。代碼有一個產生異常的錯誤。您可以逐步調試代碼,例如查找問題的原因。 – Oleg 2012-07-31 16:03:57
用附加的調試器運行站點,我相信你會看到拋出的異常。否則,使用瀏覽器調試工具(螢火蟲,Chrome開發者工具,IE開發者工具)檢查從請求,這應該是一個YSOD – 2012-07-31 16:07:22
@Oleg返回的數據:您的建議感謝。我調試了代碼,奇怪的是它沒有拋出任何異常,我把代碼放在try/catch中,注意到沒有拋出任何異常。在能夠成功添加/編輯記錄並進行適當處理之前,我能夠查看所有例外情況。但是,在正確添加/編輯記錄之後,沒有發現異常,但仍會引發此錯誤。這就是我很困惑。任何建議以某種方式處理這個錯誤,而不是在服務器端被捕獲? – inspiringmyself 2012-07-31 16:09:10