このサイトですでに回答されている場合はお詫びします。検索しましたが、この正確なシナリオは見つかりませんでした。
log4netをWCFサービスに追加しています。Application_Errorイベントにハンドラーを追加しましたが、すべてのリクエストでファイルが見つからないというエラーをキャッチしています。
これはWebサイトで見たことがありますが、通常、エラーはルートディレクトリに「ファビコン」ファイルがないか、cssスタイルシートで参照されている画像が欠落していることが原因である可能性があります。
ただし、これはWCFサービスであり、CSSスタイルシートはなく、ルートにファビコンを追加しても問題は解決しませんでした。
他の誰かがこれをトラブルシューティングするための良い方法を持っていますか?
いくつかの手がかり:
- これはまだ実際のIISサーバーに展開しておらず、ローカルで実行しています。
- Visual Studio内のDEBUGで実行している場合、エラーは発生しません。Webブラウザー(IEまたはChrome)からサービスにアクセスする場合のみです。
エラーメッセージにURLとファイルパスを追加しました。これが次のとおりです。
FilePath: /
エラー: System.Web.HttpException(0x80004005):ファイルが存在しません。
編集:上記の値は、ログに記録された例外に表示されるものです。
protected void Application_Error(object sender, EventArgs e)
{
var objErr = Server.GetLastError().GetBaseException();
if (objErr is System.Web.HttpException)
{
var filePath = Context.Request.FilePath;
var url = ((HttpApplication) sender).Context.Request.Url;
Log.Error("URL: " + url + "; FilePath: " + filePath, objErr);
} else
Log.Error("Application Error", objErr);
}
どんな助けでも大歓迎です。