代码之家  ›  专栏  ›  技术社区  ›  LeleDumbo

NHibernate 2.1.1引用了旧版本的Spring

  •  1
  • LeleDumbo  · 技术社区  · 16 年前

    NHibernate 2.1.0参考弹簧1.3.0。

    NHibernate 2.1.1参考弹簧0.0.0.2。

    有什么特别的原因吗?我升级到了NHibernate 2.1.1,现在我遇到了装配加载错误。

    2 回复  |  直到 16 年前
        1
  •  2
  •   tobsen    16 年前

    nhibernate 2.1.2ga已经发布,12月15日SpringTeam将发布Spring.net 1.3ga。我更新到了一个夜间版本(它们现在非常稳定,并且有一个“功能冻结”),它已经根据2.1.2ga进行编译。您也可以尝试一下。

        2
  •  1
  •   BennyM    16 年前

    你需要使用 assembly redirect 在app/web.config中指向要使用的spring.net版本。版本号将取决于您使用的特定版本。

    我猜你将使用由Spring.net生成的代理,而不是Castle,因为Spring.net 1.3和NHibernate提供程序中有一个bug,所以你需要选择最新的版本之一。

      <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <dependentAssembly>
            <assemblyIdentity name="Spring.Aop"
                              publicKeyToken="65e474d141e25e07"
                              culture="neutral" />
    
            <bindingRedirect oldVersion="0.0.0.20110"
                             newVersion="0.0.0.20310"/>
          </dependentAssembly>
          <dependentAssembly>
            <assemblyIdentity name="Spring.Core"
                              publicKeyToken="65e474d141e25e07"
                              culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.20110"
                             newVersion="0.0.0.20310"/>
          </dependentAssembly>
        </assemblyBinding>
      </runtime>