我正在尝试将最新的Twitter模块添加到Orchard应用程序(托管在Azure上),但是在注册后我收到以下错误:
无法加载文件或程序集'NHibernate.Linq,Version = 0.0.0.0,Culture = neutral,PublicKeyToken = null'或其依赖项之一。系统找不到指定的文件。
如果我取消注册Twitter模块,则不会发生错误,并且我在模块中看不到对NHibernate.Linq的任何引用。错误发生在DefaultContentQuery类中。
知道发生了什么事吗?
更新
啊,我想我已经找到了。该模块从其自己的bin文件夹中引用Orchard.Core和Orchard.Framework,因此我将其更改为引用源项目。据推测它是用旧版本编译的。答案 0 :(得分:0)
在我的案例中,这是CyberStride.Contacts和Mello.ImageGallery模块中的一个错误(在引用中)。他们直接引用Orchard dll而不是csproj文件。
基于简单的grep命令(例如......)快速检测到。
find . -iname "*.csproj" | xargs grep -i "orchard*.dll"
错误的例子:
<HintPath>..\..\bin\Orchard.Core.dll</HintPath>
正确的例子:
<ProjectReference Include="..\..\Core\Orchard.Core.csproj">