1

アプリケーションをデプロイした後、UAT サーバーでこのエラーが発生します。DEV & QA サーバーを含む他の環境でも問題なく動作します。

  • UAT サーバーは Windows 2008 R2 SP2 64 ビット、.NET 4.0、および IBM .Net Data Provider です。
  • DEV および QA ボックスには、SP2 32 ビット、.NET 4.0、および IBM .Net Data Provider を搭載した Windows 2003 があります。

Enterprise Library 5.0 を使用しています。web.config の構成は次のとおりです。

<configSections>
    <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</configSections>

<connectionStrings>
    <add name="DatabaseServer" connectionString="Server=XXX;Database=XXXX;UID=XXXX;PWD=XXXX;" providerName="IBM.Data.DB2" />
</connectionStrings>

<dataConfiguration defaultDatabase="DatabaseServer"/>

<system.data>
    <DbProviderFactories>
         <remove invariant="IBM.Data.DB2"></remove>
         <add name="IBM DB2 .NET Data Provider" invariant="IBM.Data.DB2" description="IBM DB2 Data Provider for .NET Framework 2.0" type="IBM.Data.DB2.DB2Factory, IBM.Data.DB2, Version=9.0.0.2, Culture=neutral, PublicKeyToken=7c307b91aa13d208"/>
    </DbProviderFactories>
</system.data>

正常に動作し、32 ビット サーバー上のデータベースに接続します。64 ビット サーバーでデータベース接続をテストする Windows アプリケーションを開発し、すべての構成を app.config に含めました。これも完全に機能しますが、IIS を介して Web サイトにアクセスすると、次のエラーがスローされます。

登録された .Net Framework Data Provider の検索または読み込みに失敗しました

誰でも私を助けてもらえますか?

4

1 に答える 1

0

使用しているクライアント・アクセスのバージョンに応じて、IBM.DB2.iSeriesコンポーネントが機能する場合と機能しない場合があります。とりあえずV5R4を使用していますが、6.1バージョンがリリースされたときに壊れていたすべてのコードを修正するためにスクランブルをかけています。V5R4バージョンは64ビットではまったく機能しません。最近のバージョンについてはよくわかりません。

1つのオプションは、X64、Itanium、または任意のCPUではなく、x86をターゲットとしてコンパイルするようにプロジェクトを設定することです。

于 2012-10-06T22:11:52.843 に答える