从连接中获取提供者名称

时间:2014-03-27 11:50:02

标签: c# .net

我已使用此代码从连接获取提供程序名称和工厂:

public string GetFactory(IDbConnection connection) {
  string provider = connection.GetType().Namespace;
  return DbProviderFactories.GetFactory(provider);
}

不幸的是,这不适用于Sql Ce(精简版),因为它不包含版本信息。我认为这是安装同一驱动程序的多个版本时的一般问题。

Exmaple:上面的代码将使用提供程序" System.Data.SqlServerCe"但是DbProviderFactories.GetFactoryClasses()的真实姓名是" System.Data.SqlServerCe.3.5"。

我在连接上找不到任何与版本名称连接的提供程序版本属性。对于这个或另一个方法有什么解决方案吗?

0 个答案:

没有答案