无法加载文件或程序集“Remotion.Linq,版本=2.1.0.0

Could not load file or assembly 'Remotion.Linq, Version=2.1.0.0

在我的 C# 项目中调用此代码时:

var erg = (from p in m_dbSession.Query<VBESelectionTracker>()
          where p.ModuleName.Equals(newSelection.ModuleName) && p.DatabaseFile.Equals(m_dbFile)
          select p).ToList();

抛出以下异常:

Could not load file or assembly 'Remotion.Linq, Version=2.1.0.0, Culture=neutral, PublicKeyToken=fee00910d6e5f53b' or one of its dependencies.

A "Remotion.Linq.dll" 是构建的一部分,但是当我查看它的属性时,版本是:2.2.0.30000。这并不奇怪,因为 v2.2.0 是我通过 NuGet 安装的 Remotion.Linq 的版本。我还使用 FluentNHibernate v2.1.2 和 NHibernate v5.1.1(我必须使用旧版本的 NHibernate 因为这个:https://github.com/FluentNHibernate/fluent-nhibernate/issues/430 错误)。

那么我程序的哪一部分尝试使用 Remotion.Linq v2.1.0.0,为什么?我该怎么做才能解决这个问题?

我已采取的解决此问题的步骤:

FluentNhibernate 不依赖于 Remotion.Linq。所以 NHibernateRemotion.Linq 之间的所有依赖关系问题。

所以只需删除所有三个 nuget 包,然后按以下顺序安装它们:

1) NHibernate 5.1.6(应该安装合适的 Remotion.Linq 版本,不要手动安装)

2) FluentNHibernate v2.1.2