我们可以一次打开两个数据库提供程序吗?

时间:2015-03-31 05:45:27

标签: c#

想知道是否有可能在一个应用程序中一次打开两个数据库提供程序

我知道提供者模型,但这将有助于一次提供一个db提供程序初始化。我们如何制作两个/多个?

还是其他任何方式?

1 个答案:

答案 0 :(得分:2)

是的,这可能是一个例子:

 <system.data>
    <DbProviderFactories>
      <remove invariant="MySql.Data.MySqlClient"></remove>
      <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.8.3.0" />
      <remove invariant="System.Data.SqlServerCe.4.0" />
      <add name="Microsoft SQL Server Compact Data Provider 4.0" invariant="System.Data.SqlServerCe.4.0" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
    </DbProviderFactories>
  </system.data>

然后您可以按名称获取提供者工厂:

DbProviderFactory factory =
                DbProviderFactories.GetFactory(providerName);

            connection = factory.CreateConnection();

您可以在此处找到更多信息: https://msdn.microsoft.com/en-us/library/dd0w4a2z%28v=vs.110%29.aspx