免責聲明:我已經看到確切的問題,但沒有看到任何可以解決我的問題的答案。
服務器:安裝了帶有ASP.NET 4.0 Framework(客戶端配置文件和擴展)的Windows Server 2008。
場景:這不會發生在我的開發服務器上,它只發生在我的生產服務器上,所以我的調試功能非常有限。 問題:當我點擊使用EntityDataSource加載數據的頁面時,我的elmah給了我這個。無法在實體框架中加載一個或多個請求的類型
System.Reflection.ReflectionTypeLoadException 無法加載的一個或多個 的請求的類型。檢索 LoaderExceptions屬性獲取更多 信息。
沒有太大的幫助Stack Trace too。所以我使用Global.asax
這樣的事件Application_Error
這樣得到更多這樣的錯誤的細節。
void Application_Error(object sender, EventArgs e)
{
// Code that runs when an unhandled error occurs
StringBuilder sb = new StringBuilder();
Exception objErr = default(Exception);
objErr = Server.GetLastError().GetBaseException();
Server.ClearError();
if (objErr is ReflectionTypeLoadException) {
ReflectionTypeLoadException reflerror = default(ReflectionTypeLoadException);
reflerror = (ReflectionTypeLoadException)objErr;
foreach (var ex in reflerror.LoaderExceptions) {
sb.AppendLine(ex.Message);
}
}
sb.AppendLine("<b>Source:</b>" + Request.RawUrl);
sb.AppendLine("<br><b>Browser:</b>" + Request.UserAgent);
sb.AppendLine("<br><b>IP:</b>" + Request.UserHostAddress.ToString());
sb.AppendLine("<br><b>UserID:</b>" + User.Identity.Name);
sb.AppendLine("<hr><br><b>Error in: </b>" + Request.Url.ToString());
sb.AppendLine("<br><b>Error Message: </b>" + objErr.Message.ToString());
sb.AppendLine("<br><b>Stack Trace: </b><br>" + objErr.StackTrace.ToString());
Elmah.ErrorSignal.FromCurrentContext().Raise(new Exception(sb.ToString()));
}
現在,我得到中性記錄爲錯誤,
System.Exception的
無法加載文件 或程序集「System.Web.Mvc, 版本= 3.0.0.0,文化= , PublicKeyToken = 31bf3856ad364e35'或 其依賴項之一。系統 找不到指定的文件。 來源: /顧問/搜索
瀏覽器:的Mozilla/5.0 (Windows NT的6.1; RV:5.0) 的Gecko/20100101火狐/ 5.0
IP:我的IP
用戶名: user1020
中的錯誤: http://mysite.com/search
錯誤消息:無法 加載一個或多個請求的 類型。檢索LoaderExceptions 屬性以獲取更多信息。
堆棧跟蹤:
在 System.Reflection.RuntimeModule.GetTypes(RuntimeModule 模塊)在 System.Reflection.RuntimeModule.GetTypes() 在 System.Reflection.Assembly.GetTypes() 在 系統。 Data.Metadata.Edm.ObjectItemConventionAssemblyLoader.LoadTypesFromAssembly() 在 System.Data.Metadata.Edm.ObjectItemAssemblyLoader.Load() 在 System.Data.Metadata.Edm.AssemblyCache.LoadAssembly(大會 組件,布爾 loadReferencedAssemblies, ObjectItemLoadingSessionData loadingData) System.Data.Metadata.Edm.AssemblyCache。LoadAssembly(大會 組裝,布爾 loadReferencedAssemblies, KnownAssembliesSet knownAssemblies, EdmItemCollection edmItemCollection, 行動 typesInLoading,List`1 &錯誤)在......(跟蹤繼續)
請看第一行。
什麼是System.Web.Mvc, Version=3.0.0.0
在ASP.NET場景中做什麼?
我問我的服務器人安裝MVC3。但這真的沒有任何意義。
任何幫助/指針將不勝感激。我沒有被這個莫名其妙的長時間用asp.net :(
爲什麼這個錯誤發生,這將是一個很好的解決方案/解決方法嗎?
您是否檢查過web.config?可能有一些對此dll的引用 –
@adrian:絕對沒有adrian。:)抱歉,延遲迴復。我睡了 – naveen