1

我遇到了一个我很困惑的特定异常。我最近将我的应用程序的目标框架从 .net Framework 4.0 客户端配置文件更改为 .net Framework 4.5。这显然导致我的实体框架有点混乱。运行应用程序时出现此异常...

System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the
LoaderExceptions property for more information.
   at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
   at System.Reflection.RuntimeModule.GetTypes()
   at System.Reflection.Assembly.GetTypes()
   at System.Data.EntityUtil.GetTypesSpecial(Assembly assembly)
   at System.Data.Metadata.Edm.ObjectItemAttributeAssemblyLoader.LoadTypesFromAssembly()
   at System.Data.Metadata.Edm.ObjectItemAssemblyLoader.Load()
   at System.Data.Metadata.Edm.ObjectItemAttributeAssemblyLoader.Load()
   at System.Data.Metadata.Edm.AssemblyCache.LoadAssembly(Assembly assembly, Boolean loadReferencedAssemblies, ObjectItemLoadingSessionData loadingData)

问题是在我做出这个改变之前它曾经工作过......我搞砸了什么?我需要重新生成这些实体吗?我该如何进行故障排除和解决此问题?谢谢。

4

1 回答 1

1

两种调试方法:

  1. 在调试器中运行您的程序,打开未处理的异常,然后检查异常的 LoaderExceptions 属性,如消息所述。这应该让您了解未加载哪种类型。

  2. 运行fuslogvw.exe并检查那里记录的故障。如果未找到或无法加载程序集,它将告诉您是哪一个以及可能的原因。

于 2012-11-01T12:06:04.723 回答