關於IOC反射錯誤(無法加載一個或多個請求的類型。有關更多信息,請檢索 LoaderExceptions 屬性...)的診斷辦法


今天在新環境部署了一個新開發的應用,運行時報出了“無法加載一個或多個請求的類型。有關更多信息,請檢索 LoaderExceptions 屬性...” 的錯誤。程序拋出的簡單異常信息無法判斷是因為哪個程序集導致的。下面有一個比較好的解決方案是,捕獲更詳細的異常信息,代碼如下:(參考Stack Overflow)

private static void WriteRefleError(ReflectionTypeLoadException ex)
        {
            var sb = new StringBuilder();
            foreach (var exSub in ex.LoaderExceptions)
            {
                sb.AppendLine(exSub.Message);
                var exFileNotFound = exSub as FileNotFoundException;
                if (exFileNotFound != null)
                {
                    if (!string.IsNullOrEmpty(exFileNotFound.FusionLog))
                    {
                        sb.AppendLine("異常日志:Fusion Log:");
                        sb.AppendLine(exFileNotFound.FusionLog);
                    }
                }
                sb.AppendLine();
            }
            var errorMessage = sb.ToString();
            //Write Log info...
            //Display or log the error based on your application.
        }

最后通過上面的代碼捕獲了更加詳細的異常信息,是因為新環境的沒有升級MVC版本的原因,升級MVC問題完美解決了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM