本篇文章為大家展示了ADO.NET中怎么創建一個通用接口對象,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

專注于為中小企業提供成都網站建設、成都網站制作服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業鯉城免費做網站提供優質的服務。我們立足成都,凝聚了一批互聯網行業人才,有力地推動了上千企業的穩健成長,幫助中小企業通過網站建設實現規模擴充和轉變。
使用ADO.NET DbProviderFactories類來創建對象。提供程序工廠模型的限制,許多查詢結構都是數據庫特有的。為參數化查詢設置CommandText時,可能需要提供程序特有的代碼,指定參數數據類型可能需要提供程序特有的代碼。為了使開發的代碼通用。
不局限于特定的數據庫,本次開發中決定使用DbProviderFactory+標準SQL,以開發一個適用于MySQL和 sqlserver的封裝,但DbProviderFactories 并沒有提供對mysql的DbProviderFactory的支持,所以需要擴充ADO.NET通用接口兼容mysql,而且在ADO.net 2.0中mysql和sqlserver的ParameterMarkerFormat都有bug,ADO.NET通用接口所以擴展類要解決這個bug。
public static class DbProviderFactoriesEx { public static DbProviderFactory GetFactory(string providerName) { if (providerName == null) throw new ArgumentNullException("providerName"); DbProviderFactory dbFactory; switch (providerName) { case "MySql.Data.MySqlClient": return new MySqlClientFactory(); default: return DbProviderFactories.GetFactory(providerName); } } public static string GetParameterMarkerFormat(DbConnection connect) { if (connect == null) throw new ArgumentNullException("connect"); Type type = connect.GetType(); if (type == typeof(MySql.Data.MySqlClient.MySqlConnection)) return "?{0}";//mysql bug if (type == typeof(System.Data.SqlClient.SqlConnection)) return "@{0}";//ms bug connect.Open(); string result = connect.GetSchema("DataSourceInformation").Rows[0]["ParameterMarkerFormat"].ToString(); connect.Close(); return result; } }上述內容就是ADO.NET中怎么創建一個通用接口對象,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注創新互聯行業資訊頻道。
當前名稱:ADO.NET中怎么創建一個通用接口對象
鏈接URL:http://www.yijiale78.com/article6/jdopig.html
成都網站建設公司_創新互聯,為您提供外貿建站、網站營銷、用戶體驗、品牌網站設計、營銷型網站建設、外貿網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯