我有一個南希應用程序,我最近更新使用OWIN/Katana。南希應用程序錯誤被OWIN吞噬?
出於某種原因,我的「真實」錯誤現在被隱藏。
這是唯一的一般錯誤我接收:
任務的異常(或多個)未觀察到無論是等待在Task或訪問其Exception屬性。結果,未被觀察到的異常被終結器線程重新拋出。
原因:HttpException·遠程主機關閉連接。錯誤代碼是0x800704CD。 :0System.Web.Hosting.IIS7WorkerRequest.RaiseCommunicationError(的Int32結果,布爾throwOnDisconnect) :0System.Web.Hosting.IIS7WorkerRequest.ExplicitFlush() :0System.Web.HttpResponse.Flush(布爾finalFlush,布爾異步) :0Microsoft .Owin.Host.SystemWeb.CallStreams.OutputStream.Flush()
:0System.IO.StreamWriter.Flush(布爾flushStream,布爾flushEncoder)
:0System.IO.StreamWriter.Dispose(布爾處置)
:0System。 IO.StreamWriter.Close()
:0Newtonsoft.Json.JsonWriter.System.IDisposable.Dispose()
:0Nancy.Serialization.JsonNet.JsonNetSerializer.Serialize(S特林的contentType,TModel的模型,流的OutputStream)
:0Nancy.Owin.NancyMiddleware + <> c__DisplayClasse.b__a(NancyContext上下文)
:0System.Threading.Tasks.Task.Execute()
這不是真正的錯誤。出於某種原因,我更新爲使用OWIN後,我的真實錯誤不再被記錄。
我的OWIN啓動只有app.UseNancy()
(沒有其他中間件)。
這裏是我的錯誤處理程序中ApplicationStartup
:
pipelines.OnError.AddItemToEndOfPipeline((context, exception) => OnError(container.Resolve<ILoggingService>(), context, exception));
private static Response OnError(ILoggingService loggingService, NancyContext context, Exception exception)
{
// log something
}
我到底做錯了什麼?我是否必須編寫自定義中間件來處理錯誤?
編輯
在此更新。當它發生時,它實際上會崩潰我的網站/應用程序池。我在.NET 4.5上。