C#實現工廠模式簡介--實現訪問不同的資料庫
首先是配置檔案:其中的providerName就是指定的不同資料庫型別
- <connectionStrings>
- <addnameaddname="..."connectionString="..."providerName="System.Data.OleDb"/>
- <addnameaddname="..."connectionString="..."providerName="System.Data.SqlClient"/>
- </connectionStrings>
下面看一下使用工廠的這個類:
- class DataBaseFac
- {
- private DbConnection cnn;//抽象型別
- private DbCommand cmd;//抽象型別
- private DbProviderFactory provider;
- public DataBaseFac()
- {
- //從配置檔案中取出標示資料庫型別的字串
- string providerName=ConfigurationManager.ConnectionStrings[1].ProviderName;
- //根據上一部的結果工廠建立一個對應的例項
- provider=DbProviderFactories.GetFactory(providerName);
- //使用該例項就可以建立對應的connection,command和adapater物件了
- //除錯的時候可以看到這幾個物件都變成了相應於資料庫型別的
- cnn=provider.CreateConnection();
- cnn.ConnectionString=ConfigurationManager.ConnectionStrings[1].ConnectionString;
- cmd=provider.CreateCommand();
- cmd.Connection=cnn;
- }
- //執行一次查詢,返回資料表
- public DataTable ExcuteQuery(string queryString)
- {
- DataTable result=new DataTable();
- DbDataAdapter adapter=provider.CreateDataAdapter();
- cmd.CommandType=CommandType.Text;
- cmd.CommandText=queryString;
- adapter.SelectCommand=cmd;
- try
- {
- cnn.Open();
- adapter.Fill(result);
- }
- catch
- {
- result=null;
- }
- finally
- {
- cnn.Close();
- }
- return result;
- }
相關文章
- 設計模式-C#實現簡單工廠模式設計模式C#
- Java實現工廠模式Java模式
- php實現抽象工廠模式PHP抽象模式
- C++實現工廠模式C++模式
- Python 實現工廠模式、抽象工廠,單例模式Python模式抽象單例
- 簡單工廠模式(simple factory)及程式碼實現模式
- 1、簡單工廠模式實現計算器功能模式
- 在.net中用資料工廠實現多資料庫的操作方案資料庫
- 使用C# (.NET Core) 實現簡單工廠(Simple Factory) 和工廠方法設計模式 (Factory Method Pattern)C#設計模式
- 配置postgres9.3間的fdw——實現不同postgres資料庫間的互訪問資料庫
- Holer實現MongoDB資料庫外網訪問MongoDB資料庫
- Holer實現外網訪問SQLServer資料庫SQLServer資料庫
- Holer實現外網訪問PostgreSQL資料庫SQL資料庫
- java 簡單工廠模式(實現一個計算器)Java模式
- C# 設計模式(1)——簡單工廠模式、工廠模式、抽象工廠模式C#設計模式抽象
- Go 實現常用設計模式(六)工廠模式Go設計模式
- 用Python實現設計模式——工廠模式Python設計模式
- 使用C# (.NET Core) 實現抽象工廠設計模式 (Abstract Pattern)C#抽象設計模式
- Python實現工廠模式的兩個例子Python模式
- Holer實現外網訪問MariaDB資料庫資料庫
- AspectJ實現設計模式(三)——工廠方法模式 (轉)設計模式
- 資料庫的最簡單實現資料庫
- spring-data-mongodb多資料庫訪問實現SpringMongoDB資料庫
- 使用Oracle Net實現限制特定IP訪問資料庫Oracle資料庫
- 我所理解的設計模式(C++實現)——簡單工廠模式(Simple Factory Pattern)設計模式C++
- 資料庫訪問抽象類實現專案資料庫靈活切換資料庫抽象
- 簡單工廠模式—>工廠模式模式
- 如實實現不同資料庫之間的 (模型) Eloquent: 關聯資料庫模型
- c#簡單工廠設計模式C#設計模式
- 使用R2DBC實現資料庫的響應式訪問資料庫
- LSM樹的不同實現介紹
- 工廠模式之簡單工廠模式模式
- 簡單工廠模式、工廠模式、抽象工廠模式比較模式抽象
- 實現物件[gkk]週六的chuan zhi答疑課-工廠模式物件模式
- SQL Server資料庫的簡單實現方法SQLServer資料庫
- MVVM模式和在WPF中的實現(一)MVVM模式簡介MVVM模式
- 用SERVICE LOCATOR 模式實現命名訪問 (轉)模式
- RPC模式的介紹以及簡單的實現RPC模式