我正在为一个类开发一个开源MVC项目,一旦其他学生中的一个将MEF添加到它停止运行的项目中。它仍然适用于所有其他人我已经研究了很长一段时间,并且要求教授和避风港能够得到任何工作。
有关整个错误,请参阅以下
以下是错误页面每个部分的第一行 注意:
[ReflectionTypeLoadException:无法加载一个或多个 要求的类型。检索LoaderExceptions属性以获取更多信息 信息。]
注意:这是错误页面上的一行,我觉得这很奇怪。
[InvalidOperationException:编写MEF时发生错误 部分。类型:Microsoft.SqlServer.Management.Smo.SecurityUtils, Microsoft.SqlServer.Management.Smo.ExecutionManager, Microsoft.SqlServer.Management.Smo.ExecutionManager + ExecResult, Microsoft.SqlServer.Management.Smo.ExecutionStatus,
删除了几百只垃圾邮件,请查看链接是否有错误
Microsoft.SqlServer.Management.Smo.ScriptContainer, Microsoft.SqlServer.Management.Smo.ObjectScriptContainer, Microsoft.SqlServer.Management.Smo.IdBasedObjectScriptContainer, Microsoft.SqlServer.Management.Smo.TableScriptContainer, Microsoft.SqlServer.Management.Smo.ScriptContainerFactory, Microsoft.SqlServer.Management.Smo.SfcDiscoveryNode, Microsoft.SqlServer.Management.Smo.SfcHierarchyDiscovery, Microsoft.SqlServer.Management.Smo.SfcDependencyDiscovery, Microsoft.SqlServer.Management.Smo.SfcDependencyDiscovery + SfcNodeVisitor, Microsoft.SqlServer.Management.Smo.SfcDependencyDiscovery + ScriptListContext, Microsoft.SqlServer.Management.Smo.SmoDependencyDiscovery, Microsoft.SqlServer.Management.Smo.ErrorLocation, Microsoft.SqlServer.Management.Smo.DependencyDiscoveryError, Microsoft.SqlServer.Management.Smo.DependencyDiscoverySink, {6700AF61-4E8B-4423-BE3B-A43DE0C1B3B3}, {6700AF61-4E8B-4423-BE3B-A43DE0C1B3B3} + _ StaticArrayInitTypeSize = 24, Microsoft.SqlServer.Management.Smo.Server + d _0, Microsoft.SqlServer.Management.Smo.Database + D_ 0, Microsoft.SqlServer.Management.Smo.Database + d _3, Microsoft.SqlServer.Management.Smo.CpuCollection + D_ 0, Microsoft.SqlServer.Management.Smo.BackupMediaSet + LT;&以及c _DisplayClass2, Microsoft.SqlServer.Management.Smo.BackupSet + LT;> C_ DisplayClassa, Microsoft.SqlServer.Management.Smo.PropertyCollection + d _0, Microsoft.SqlServer.Management.Smo.ScriptMaker + D_ 2, Microsoft.SqlServer.Management.Smo.ScriptMaker + d _8, Microsoft.SqlServer.Management.Smo.SmoDependencyOrderer + LT;> C_ DisplayClass25, Microsoft.SqlServer.Management.Smo.DatabasePrefetchBase + d _1, Microsoft.SqlServer.Management.Smo.ObjectScriptContainer + LT;> c__DisplayClass2, ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 原因:无法加载文件或程序集 ' Microsoft.SqlServer.SqlEnum,Version = 11.0.0.0,Culture = neutral, 公钥= 89845dcd8080cc91'或其中一个依赖项。该 系统找不到指定的文件。
答案 0 :(得分:1)
我首先确认您的计算机上的GAC中安装了SqlEnum dll。您可以通过转到C:\ Windows \ assembly来检查这一点。如果缺少某些内容,您可能需要修复或重新安装Sql Management Objects功能。另请检查您安装的版本是否与MEF尝试加载的版本相同。
如果您安装了它,请尝试使用Fusion Log Viewer。这可以帮助您find which dlls are failing to load,以及加载器在尝试加载dll时要经历的步骤。这可以帮助您缩小问题的来源。
答案 1 :(得分:0)
我相信你错过了某处的参考资料。我将返回代码并确保所有“使用”语句都应该是这样,以及项目对程序集的引用。