• 【系统Configmachine.config与自己的应用程序的App.config/Web.Config配置节点重复】解决方法


    自己的应用程序的App.config或Web.Config文件中与
    系统的C:WindowsMicrosoft.NETFramework64v4.0.30319Configmachine.config文件
    1.重复如下配置:

        <DbProviderFactories>
          <add name="MySQL Data Provider2" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
        </DbProviderFactories>

    会抛出异常如下:

    Exception is: ConfigurationErrorsException - 创建 system.data 的配置节处理程序时出错: 列“InvariantName”被约束为是唯一的。值“MySql.Data.MySqlClient”已存在

    2.如果两者都不配置,会抛出如下异常:

    Exception is: ArgumentException - Can't load DbProviderFactory for given value of providerType

    实际当中,会碰到如下问题:

      有些数据库安装出问题的话,系统的Configmachine.config文件中不会配置

          <add name="MySQL Data Provider2" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />

          由于以上的不确定性,我们在自己应用程序的app/web.config文件中配置这个节点就可能会因重复配置造成异常。

    解决方法:

    在自己应用程序的app/web.config文件中添加这个节点:

          <remove invariant="MySql.Data.MySqlClient"/>节点

    即:

      <system.data>
        <DbProviderFactories>
          <remove invariant="MySql.Data.MySqlClient"/>
          <add name="MySQL Data Provider2" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.My SqlClient.MySqlClientFactory, MySql.Data, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
        </DbProviderFactories>
      </system.data>
  • 相关阅读:
    config文件 反射方法
    模块"xxxx.dll"已加载,但对DllRegisterServer的调用失败,错误代码为 XXXXXXXXX
    多线程定时 每天执行
    监控windows服务,当服务停止后自动重启服务
    log4net使用(winform)
    sql 第 10条 到20条
    windows 服务
    安卓屏幕模拟器
    dg_MeetingRoom 居中显示
    sql 清空所有数据
  • 原文地址:https://www.cnblogs.com/easy5weikai/p/3718047.html
Copyright © 2020-2023  润新知