在我的應用程序的配置中,我刪除了customErrors以對難以複製的錯誤進行測試。嘗試catch在Azure服務器中不起作用
而且在錯誤應該發生,我把一試:
if (ModelState.IsValid)
{
db.TarefaHoras.Add(tarefaHora);
try
{
db.SaveChanges();
}
catch (DbUpdateException ex)
{
ErroDetalhe erro = new ErroDetalhe();
erro.Data = tarefaHora.Data;
erro.UsuarioId = tarefaHora.ApplicationUserId;
erro.JSON = JsonConvert.SerializeObject(tarefaHora);
erro.Tipo = "TarefaHora";
erro.Controller = "TarefaHoras";
erro.Action = "Create Post";
erro.Exception = ex.GetType().FullName;
db.ErroDetalhes.Add(erro);
db.SaveChanges();
return RedirectToAction("ErroNaAtualizacaoDaBase", "Erros", new { id = erro.ID });
}
return RedirectToAction("Index", "Home");
}
return View(tarefaHora);
}
該錯誤僅發生在運行時,只有Azure的服務器上,所以我的嘗試是得到錯誤的,併爲這個更好的說明我創建了一個存放信息的表格。
但是....
的問題是,我得到了查看錯誤不是視圖「ErrorInputUpdate」我創建和在捕捉重定向。
我得到默認的AspNET錯誤視圖。
因此,我進入共享視圖並刪除了默認頁面,並從web.config中刪除了customErrors。
即使這時Azure仍會帶來默認錯誤視圖。
任何人有任何想法可能會發生什麼?
在** Debug **中構建和發佈,如果您希望在Visual Studio中具有相同的錯誤處理體驗,則不發佈。 – evilSnobu
你是怎麼推薦我在Debug中發佈的,但是我收到了一個如此普遍的錯誤[NullReferenceException:對象引用未設置爲對象的實例。]沒有顯示任何其他內容。任何想法? – Neumann
添加一個斷點並逐步完成。您可以遠程執行 - https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-dotnet-troubleshoot-visual-studio(遠程調試部分)。堆棧跟蹤應該已經給你足夠的上下文來理解WHERE事情正在破裂。 – evilSnobu