3

私はapp.configにこの小さな設定を追加しました:

<qualifyAssembly partialName="Oracle.DataAccess"
             fullName="Oracle.DataAccess,
                            Version=2.112.2.0,
                           Culture=neutral,
                           PublicKeyToken=89b483f429c47342" />
    </assemblyBinding>

...成功しませんでした。何が間違っている可能性がありますか?また、私のapp.configが風水であることを確認するために、ここにあります:

<?xml version="1.0"?>
<configuration>
  <configSections>
    <section name="hibernate-configuration"
    type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate"/>
  </configSections>
  <hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
    <session-factory>
      <property name="show_sql">true</property>
      <property name="dialect">NHibernate.Dialect.Oracle10gDialect</property>
      <property name="connection.driver_class">
        NHibernate.Driver.OracleDataClientDriver
      </property>
      <property name="connection.connection_string_name">
        GuitarStore2
      </property>
      <property name="connection.provider">
        NHibernate.Connection.DriverConnectionProvider
      </property>
    </session-factory>
  </hibernate-configuration>
  <connectionStrings>
    <add name="GuitarStore"
    connectionString="****************"/>
  <add name="GuitarStore2"
    connectionString="****************"/>
  </connectionStrings>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <qualifyAssembly partialName="Oracle.DataAccess"
             fullName="Oracle.DataAccess,
                            Version=2.112.2.0,
                           Culture=neutral,
                           PublicKeyToken=89b483f429c47342" />
    </assemblyBinding>
  </runtime>
</configuration>

ちなみに、私は最新のNhibernate(3.3.1)を.NET 3.5で、Windows764ビットで使用しています。そして、まったく同じプロジェクトで、別のマシンでは例外は発生しませんが、WindowsXPでは発生します。

4

1 に答える 1

6

問題はNHibernateではありませんでしたが、ILが32ビットバージョンのODPを使用しながら64ビットコードを生成していたため、「AnyCPU」オプションを「x86」に変更するだけで例外を取り除きました。

于 2012-07-30T20:02:25.707 に答える