我有一个 ASP.NET MVC 4 项目,我需要更新它才能使用 Lucene 3.0。我需要手动设置框架以使用 .NET Framework 4.5,因为我使用的是需要此版本的最新 Windows Azure 库。一切正常,除非我使用实体框架添加新数据模型。我可以使用实体框架成功添加新的数据模型。但是,当我尝试执行一个基本的存储过程(它只执行一个查询)时,我得到一个运行时异常。例外是:
System.Reflection.ReflectionTypeLoadException
Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
当我查看 LoaderExceptions 属性时,我看到以下内容:
[0] {"Could not load file or assembly 'Lucene.Net, Version=2.9.4.1, Culture=neutral, PublicKeyToken=85089178b9ac3181' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)":"Lucene.Net, Version=2.9.4.1, Culture=neutral, PublicKeyToken=85089178b9ac3181"} System.Exception {System.IO.FileLoadException}
[1] {"Could not load file or assembly 'Lucene.Net, Version=2.9.4.1, Culture=neutral, PublicKeyToken=85089178b9ac3181' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)":"Lucene.Net, Version=2.9.4.1, Culture=neutral, PublicKeyToken=85089178b9ac3181"} System.Exception {System.IO.FileLoadException}
奇怪的是,我在任何地方都找不到对 Lucene.Net 版本 2.9.4.1 的单一引用。我确实在我的应用程序中引用了 Lucene.Net 的 3.0.3.0 版本。有人能告诉我该文件的 2.9.4.1 版本会被引用到哪里吗?我查看了以下位置:
MyProject.csproj
Web.config
Global.asax.cs
packages.config
我该如何解决?我已经为此苦恼了2天。它太离奇了。非常感谢您提供的任何帮助。