无法找到请求的.net框架数据提供程序.它可能没有被安装(informix)



我有一个旧的应用程序,经过很长一段时间,当我试图测试它,我得到以下异常:

Unable to find the requested .Net Framework Data Provider.  It may not be installed.
我的代码:
 public DBConnection(string ConnectionString)
        {
            this.providerFactory = DbProviderFactories.GetFactory("IBM.Data.Informix");//Exception here
            this.connection = new IfxConnection();
            if (string.IsNullOrEmpty(ConnectionString))
            {
                this.connection.ConnectionString = ConfigurationManager.ConnectionStrings["r_informix"].ToString();
            }
            else
            {
                this.connection.ConnectionString = ConfigurationManager.ConnectionStrings["r_informix"].ToString();
            }
            command = this.connection.CreateCommand();
        }

我尝试在这里做以下解决方案

</runtime>
 <system.data>
    <DbProviderFactories>
      <add name="IBM.Data.Informix"
              invariant="IBM.Data.Informix.Client"
              description="Informix Data Provider for .NET"
              type="IBM.Data.Informix,
                  IBM.Data.Informix,
                  Version=3.0.0.2,
                  Culture=Neutral,
                  PublicKeyToken=7c307b91aa13d208" />
    </DbProviderFactories>
  </system.data>
but In vain ...

根据GetFactory函数的MSDN文档,所提供的参数应该与提供程序工厂的不变名称相匹配,该名称在配置文件中设置为IBM.Data.Informix. client,但是您传递的是IBM.Data.Informix(没有. client)。

我发现了这个:如何注册。net提供程序。我希望这对你有帮助。

您也可以尝试手动安装IBM.Data. informix和IBM.Data。DB2 in GAC.

相关内容

  • 没有找到相关文章

最新更新