SqlConnection과 SqlCEConnection은 모두 System.Data.Common.DbConnection을 확장하므로 "blah"를 DbConnection로 선언하면 동일한 메서드와 속성을 사용할 수 있습니다.
실제로 올바른 연결 유형을 만들려면 System.Data.Common.DbProviderFactories 및 System.Data.Common.DbProviderFactory 클래스를 사용하십시오. 예를 들어 :
DbProviderFactory providerFactory = DbProviderFactories.GetFactory("The Provider Name");
using (DbConnection connection = providerFactory.CreateConnection())
{
connection.ConnectionString = "The Connection String";
connection.Open();
// Use the "connection" object here
}
는 "공급자 이름"를 들어, 데이터베이스 유형에 따라 "의 System.Data.SQLClient"또는 "System.Data.SqlServerCe를"중 하나에 넣어 것입니다. 그런 다음 "연결 문자열"에 대해 공급자 유형에 대한 올바른 연결 문자열을 넣습니다.
편집 :이 기술은 App.config 파일과 System.Configuration.ConfigurationManager 클래스에서 잘 작동합니다. 예를 들어, app.config 파일은 다음과 같습니다 경우 :
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<connectionStrings>
<add name="TheConnectionString" providerName="System.Data.SqlClient" connectionString="Blah Blah Blah" />
</connectionStrings>
</configuration>
그런 다음 다음과 같이 이러한 구성 설정에 액세스 할 수 있습니다 :
DbProviderFactory providerFactory = DbProviderFactories.GetFactory(ConfigurationManager.ConnectionStrings["TheConnectionString"].ProviderName);
using (DbConnection connection = providerFactory.CreateConnection())
{
connection.ConnectionString = ConfigurationManager.ConnectionStrings["TheConnectionString"].ConnectionString;
connection.Open();
// Use the "connection" object here
}