我遇到了運行以.NET Framework 4.6爲目標的ASP.NET Core 1.0應用程序的問題。直到我們嘗試在運行Windows Server 2016的服務器上運行應用程序時,才發生該問題。該應用程序在IIS中託管,並且我已在服務器上安裝了.NET Core 1.0 Windows託管軟件包。ASP.NET中的ReflectionTypeLoadException核心MVC應用程序
在加載返回500錯誤的網站,這是寫入日誌:發生
未處理的異常:無法加載請求的類型中的一種或多種。檢索LoaderExceptions屬性以獲取更多信息。 (fc7986d0) System.Reflection.ReflectionTypeLoadException:無法加載一個或多個請求的類型。檢索LoaderExceptions屬性以獲取更多信息。
研究這個似乎涉及缺少DLL或不匹配的版本,我應該看LoaderExceptions屬性來獲取更多的信息,但我不知道怎麼做,在這種情況下。日誌條目只是通過在Startup.cs的Configure()方法中設置loggerFactory來創建的。
我試着添加一個IExceptionFilter ActionFilter實現並讀取LoaderExceptions屬性,如果該異常的類型爲ReflectionTypeLoadException,但它在服務器上運行時不會命中。
有沒有辦法深入到Exception來讀取LoaderExceptions屬性(在生產環境中,在Visual Studio中運行時沒有錯誤,因此調試沒有幫助),或者另一種方法來解決原始問題錯誤來確定服務器設置有什麼問題?