部署应用程序后,我在 UAT 服务器上收到此错误。它适用于其他环境,包括 DEV 和 QA 服务器。
- UAT 服务器是带有 SP2 64 位、.NET 4.0 和 IBM .Net 数据提供程序的 windows 2008 R2
- DEV & QA box 有 windows 2003 SP2 32bit, .NET 4.0 和 IBM .Net Data Provider
我们使用 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 位服务器上的数据库。我开发了一个 Windows 应用程序来测试 64 位服务器上的数据库连接,并将所有配置包含在 app.config 中。这也很完美,但是当通过 IIS 访问网站时,它会抛出这个错误:
未能找到或加载已注册的 .Net Framework 数据提供程序
任何人都可以帮助我吗?