简单的问题: 当应该记录错误的方法导致错误时该怎么办?
背景:
在更改数据库上的小东西后,这与日志系统非常相关(日志表在代码/用户发生错误时填充,无论如何),我的代码不再运行。登记/>
这里的好奇是,由于数据库方法的错误,系统中断了一些加载方法而jquery没有加载,所以我得到了JQuery错误!我花了大约5个小时才发现,问题不是jquery,而是日志记录方法中的问题导致jquery加载。
那么,如何在代码中避免这样的事情呢?
答案 0 :(得分:2)
您无法满足每种情况,如果不是写入数据库表,则应表明日志记录存在问题。如果你想加强它,你可以考虑在特定的try catch中遇到DB Exception时写入文本文件。
try
{
}
catch(SqlException ex)
{
fallBackWriteErrorToTxt(ex.Message);
}
答案 1 :(得分:0)
您可以使用以下代码
查看请求的天气ajax
或简单
public static bool IsAjaxRequest(this HttpRequest request)
{
if (request == null)
{
throw new ArgumentNullException("request");
}
return (request["X-Requested-With"] == "XMLHttpRequest")
|| ((request.Headers != null) &&
(request.Headers["X-Requested-With"] == "XMLHttpRequest"));
}
使用上述小说,您可以查看天气是否是ajax 资料来源:How to check if request is ajax or not in codebehind - ASP.NET Webforms
您还可以在数据库中创建一个列,以显示哪个类型的错误提供了从前端传递值。
您还可以使用全局文件的Application_Error
方法记录错误。