0

我有一个使用 ASP.NET SqlMembershipProvider 的 .NET 4 WebAPI 应用程序。

当它工作时,它工作正常 - 但如果连接到会员数据库有任何问题,我只会得到一个静默失败,并且浏览器显示 HTTP 500 服务器错误。

我正在使用 log4net 记录应用程序警告和错误,但我无法确定如何或在何处捕获 SqlMembershipProvider 引发的异常,以便记录它们。使用 Application_Error 或将处理程序显式附加到应用程序的错误事件似乎不起作用。有任何想法吗?

4

2 回答 2

0

事件记录器中什么都没有?另外,log4net 配置是否正确?过去我遇到过很多问题,这通常让我使用 NLog,至少这样当出现问题时我可以让它抱怨很多......

于 2012-10-31T14:52:09.910 回答
0

您是否尝试过创建自定义错误过滤器并将其注册到 global.asax 中?

您的 500 似乎是未处理的内部服务器错误。

为避免复制粘贴我的代码或教程中的代码,请访问此链接,它应该会给您足够的答案。您可以在操作过滤器中触发您的日志记录:

http://www.asp.net/web-api/overview/web-api-routing-and-actions/exception-handling

于 2012-10-31T21:39:06.860 回答