Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在asp.net c#MySQL应用程序中使用microsoft企业库_C#_Mysql_Asp.net_Enterprise Library - Fatal编程技术网

如何在asp.net c#MySQL应用程序中使用microsoft企业库

如何在asp.net c#MySQL应用程序中使用microsoft企业库,c#,mysql,asp.net,enterprise-library,C#,Mysql,Asp.net,Enterprise Library,我在ASP.NET c#应用程序中使用数据库MySQL。当我使用连接MySQL数据库和创建ADO.NET连接的简单步骤时,工作正常。但我想在我的应用程序中使用Microsoft企业库。我添加了下面给出的参考 Microsoft.Practices.EnterpriseLibrary.Common Microsoft.Practices.EnterpriseLibrary.Data Microsoft.Practices.EnterpriseLibrary.Data.S MySql.Data My

我在ASP.NET c#应用程序中使用数据库MySQL。当我使用连接MySQL数据库和创建ADO.NET连接的简单步骤时,工作正常。但我想在我的应用程序中使用Microsoft企业库。我添加了下面给出的参考

  • Microsoft.Practices.EnterpriseLibrary.Common
  • Microsoft.Practices.EnterpriseLibrary.Data
  • Microsoft.Practices.EnterpriseLibrary.Data.S
  • MySql.Data
  • MySql.Web
  • 下面是我的web.com代码

    <system.data>
      <DbProviderFactories>
        <remove invariant="MySql.Data.MySqlClient" />
        <add name="MySQL Data Provider"
          invariant="MySql.Data.MySqlClient"
          description=".Net Framework Data Provider for MySQL"
          type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.4.6.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
      </DbProviderFactories>
    </system.data>
    <dataConfiguration defaultDatabase="db1"></dataConfiguration>
    <connectionStrings>  
      <add name="constr" connectionString="Server=localhost;Database=db1;user id=test;persistsecurityinfo=True;" providerName="MySql.Data.MySqlClient;"/>
    </connectionStrings>
    <configuration>
      <configSections>
        <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=6.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" />
      </configSections>
    
    这里抛出下面的错误

    请求的数据库DB1在连接字符串中没有设置有效的ADO.NET提供程序名称


    请给出正确的解决方案,并说明发生这种情况的原因。

    您的连接字符串名称需要与默认数据库匹配:

    <dataConfiguration defaultDatabase="db1"></dataConfiguration>
    <connectionStrings>  
      <add name="db1" connectionString="Server=localhost;Database=db1;user id=test;persistsecurityinfo=True;" providerName="MySql.Data.MySqlClient;"/>
    </connectionStrings>
    

    您的连接字符串名称需要与默认数据库匹配:

    <dataConfiguration defaultDatabase="db1"></dataConfiguration>
    <connectionStrings>  
      <add name="db1" connectionString="Server=localhost;Database=db1;user id=test;persistsecurityinfo=True;" providerName="MySql.Data.MySqlClient;"/>
    </connectionStrings>
    
    
    
    我应用了您的解决方案。并为MySql添加“EntLibContrib.Data.MySql”dll。现在出现了“试图获取数据库类型的实例时发生激活错误,键”错误。您使用的连接器版本是什么(),请参见:我应用了您的解决方案。并为MySql添加“EntLibContrib.Data.MySql”dll。现在,“试图获取数据库类型的实例时发生激活错误,键”错误出现。您使用的连接器版本()如下:此解决方案使用“\u Database=new DatabaseProviderFactory()。Create(\u dbConnectionString)as Database;”适用于此解决方案使用“\u Database=new DatabaseProviderFactory()。Create(_dbConnectionString)作为数据库;“是我的工作吗