使用白色和NHibernate时版本与Castle.Core冲突

使用白色和NHibernate时版本与Castle.Core冲突,nhibernate,selenium,castle,Nhibernate,Selenium,Castle,我在尝试将白色功能添加到基于SeleniumWebDriver的测试框架时发现了一个问题。将所有引用添加到project后,它将编译 没有错误。但在使用方法时会引发异常 Application.GetWindow(windowTitle): ex.Message=“无法加载文件或程序集”Castle.Core,版本=1.2.0.0,区域性=neutral,PublicKeyToken=407dd0808d44fbdc”或其依赖项之一。 找到的程序集的清单定义与程序集引用不匹配。(HRESULT异

我在尝试将白色功能添加到基于SeleniumWebDriver的测试框架时发现了一个问题。将所有引用添加到project后,它将编译 没有错误。但在使用方法时会引发异常 Application.GetWindow(windowTitle):

ex.Message=“无法加载文件或程序集”Castle.Core,版本=1.2.0.0,区域性=neutral,PublicKeyToken=407dd0808d44fbdc”或其依赖项之一。 找到的程序集的清单定义与程序集引用不匹配。(HRESULT异常:0x8013100)

我下载了Castle.Core的最新版本,但问题仍然存在。因此,我删除了对Castle.Core最后版本的引用,并使用NuGet添加了对Castle.DynamicProxy的引用 和Castle.Core1.2.0(这个版本我用于单独的测试,它们可以工作)。但对于Castle.Core的过时版本,NHibernate存在一个问题。它不起作用


对于此类问题是否有任何决定?

也许您可以在web.config(或app.config)中添加程序集绑定,以便在解析1.2.0.0时转发要返回的当前版本:

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
            <assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" />
            <bindingRedirect oldVersion="1.2.0.0" newVersion="2.5.2.0" />
        </dependentAssembly>
    </assemblyBinding>
</runtime>


并希望它们是兼容的。我不确定publicKeyToken是否与1.2.0.0中的相同,因此您应该更改它以反映2.5.2.0,或者如果它需要1.2.0.0标记。

也许您可以在web.config(或app.config)中添加程序集绑定,以转发当前版本,以便在解析1.2.0.0时返回:

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
            <assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" />
            <bindingRedirect oldVersion="1.2.0.0" newVersion="2.5.2.0" />
        </dependentAssembly>
    </assemblyBinding>
</runtime>


并希望它们是兼容的。我不确定publicKeyToken是否与1.2.0.0中的相同,因此我认为您应该更改它以反映2.5.2.0,或者它是否需要1.2.0.0标记。

我使用这种程序集绑定创建app.config,但不幸的是,它也不起作用。现在消息是“无法加载文件或程序集'Castle.Core,Version=2.5.2.0,Culture=neutral,PublicKeyToken=407dd0808d44fbdc'或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(HRESULT中的异常:0x8013100)”嗯,那么,你在应用程序中使用的Castle.Core是什么版本?很抱歉延迟。现在我在项目中使用1.2.0.0。他开始工作了。但是Castle.Core仍然无法使用这样的程序集绑定创建app.config,但不幸的是,它也无法工作。现在消息是“无法加载文件或程序集'Castle.Core,Version=2.5.2.0,Culture=neutral,PublicKeyToken=407dd0808d44fbdc'或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(HRESULT中的异常:0x8013100)”嗯,那么,你在应用程序中使用的Castle.Core是什么版本?很抱歉延迟。现在我在项目中使用1.2.0.0。他开始工作了。但是城堡。核心仍然不起作用