C# 导出失败,原因是:无法加载一个或多个请求的类型。有关详细信息,请检索LoaderExceptions属性。
每次我将代码发布到另一台服务器时,都会出现以下错误 导出失败,原因是:无法加载一个或多个请求的类型。有关详细信息,请检索LoaderExceptions属性C# 导出失败,原因是:无法加载一个或多个请求的类型。有关详细信息,请检索LoaderExceptions属性。,c#,sql,silverlight,entity,C#,Sql,Silverlight,Entity,每次我将代码发布到另一台服务器时,都会出现以下错误 导出失败,原因是:无法加载一个或多个请求的类型。有关详细信息,请检索LoaderExceptions属性 这是非常令人沮丧的,我已经检查并确保所有的项目参考文件都包括在内。。。。任何帮助都将不胜感激 我在使用AutoFac时遇到了这个问题。基本上,我有这行代码,得到了与您相同的错误: return builder.Build(); 例外情况不会告诉您任何您知道的事情!因此,您需要像上面所说的那样合并“LoaderExceptions”。我想出
这是非常令人沮丧的,我已经检查并确保所有的项目参考文件都包括在内。。。。任何帮助都将不胜感激 我在使用AutoFac时遇到了这个问题。基本上,我有这行代码,得到了与您相同的错误:
return builder.Build();
例外情况不会告诉您任何您知道的事情!因此,您需要像上面所说的那样合并“LoaderExceptions”。我想出了一个非常有效的方法,并直接指出了缺失的DLL:
try
{
return builder.Build();
}
catch (Exception ex)
{
if (ex is ReflectionTypeLoadException)
{
var typeLoadException = ex as ReflectionTypeLoadException;
var loaderExceptions = typeLoadException.LoaderExceptions;
throw new AggregateException(typeLoadException.Message, loaderExceptions);
}
throw;
}
现在在异常中我得到了一堆有用的信息,但最重要的是我缺少的DLL:“(内部异常#0)System.IO.FileNotFoundException:无法加载文件或程序集'System.Web.Mvc,Version=3.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35'或其依赖项之一。系统找不到指定的文件。
文件名:“System.Web.Mvc,Version=3.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”
我发现System.Web.MVC被该项目引用的一个项目引用。所以这个项目并不直接需要它,但它的一个依赖项需要它
在你的代码周围放一个这样的尝试/捕捉,我想你会省去很多痛苦
干杯。我在Autofac Build()中使用了nootn的try-catch代码,得到了以下错误:
Could not load file or assembly 'EntityFramework, Version=4.3.1.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
这是因为我使用的是MVC4 VS2012模板,默认情况下EntityFramework引用指向EF 5 rc。所以我
卸载包EntityFramework
,然后安装包EntityFramework
,安装EF4.3。它正在工作。谢谢你,没有。堆栈跟踪?导致错误的代码?你还没有提供任何人帮助你所需的信息量。你能解释一下吗?在您尝试部署之前,我预计构建会失败。你们在部署之前从来没有在visual studio中进行过“发布”构建吗?嗨@radarbob,我认为最终的根本问题是,使用MVC3时,DLL没有被复制到测试服务器上,而且它们也不在那里(即MVC3没有安装)。因此,发布或调试此命令将在本地框上运行。MVC4现在作为一个NuGet包修复了这个问题,因此默认情况下DLL被复制到bin文件夹中。不管怎么说,撇开细节不谈,我的回答只是说明了如何突出显示实际问题,因为默认异常并不明显。每个人的实际问题都可能不同,我的问题恰好是MVC3。