简单问题: 该方法应记录一个错误会导致错误该怎么办?写入错误日志时会发生什么错误?
背景:
在数据库上改变一个小东西之后,那真的是很辛苦相关的记录系统(注册表得到的时码发生/从用户错误填写的,等等),我的代码不再运行。
这里的古怪事情是,由于数据库方法的错误,系统中断了一些加载方法,并且jquery没有加载,所以我得到了JQuery错误!我花了大约5个小时才发现,jquery不是问题所在,相反它是日志记录方法中的一个问题,它会阻止jquery加载。
那么,如何在代码中避免这种情况?
简单问题: 该方法应记录一个错误会导致错误该怎么办?写入错误日志时会发生什么错误?
背景:
在数据库上改变一个小东西之后,那真的是很辛苦相关的记录系统(注册表得到的时码发生/从用户错误填写的,等等),我的代码不再运行。
这里的古怪事情是,由于数据库方法的错误,系统中断了一些加载方法,并且jquery没有加载,所以我得到了JQuery错误!我花了大约5个小时才发现,jquery不是问题所在,相反它是日志记录方法中的一个问题,它会阻止jquery加载。
那么,如何在代码中避免这种情况?
你不能迎合每种情况,并且如果它不写入数据库表应该表明日志记录存在问题。如果你想加强它,你可以考虑在特定的尝试捕获中遇到数据库异常时写入文本文件。
try
{
}
catch(SqlException ex)
{
fallBackWriteErrorToTxt(ex.Message);
}
您可以查看天气的请求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
方法记录错误。
在日志记录方法引起异常时,使用尝试捕获日志记录方法并使用不同的通知。 – Sefa
这是! (不是我的项目,我只是改变了一些东西),但在catch()中没有任何反应,所以你不能真正看到是否有错误,如果你有一个空的catch – ReneK