ADO.NET列舉資料提供者
資料提供者列舉
使用DbProviderFactories類可以查詢安裝於本地機器的.NET資料提供者。靜態方法GetFactoryClasses()會通過DataTable型別返回實現了DbProviderFactory基類的所有繼承類的資訊。
表1- GetFactoryClasses()方法返回結果的DataTable表定義
列名 |
說明 |
Name |
資料提供者名稱 |
Description |
資料提供者說明 |
InvariantName |
在machine.config檔案的 |
AssemblyQualifiedNAme |
資料提供者的完整名,例項化物件的所有資訊(反射)。 |
以下程式碼用來實現對本地支援的資料提供者的列舉:
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
-->using System;
using System.Data;
using System.Data.Common;
class Program
{
static void Main(string[] args)
{
DataTable dt = DbProviderFactories.GetFactoryClasses();
foreach (DataRow row in dt.Rows)
{
Console.WriteLine("{0}\n\r {1}\n\r {2}\n\r {3}\n\r",
row["Name"], row["Description"], row["InvariantName"],
row["AssemblyQualifiedName"]);
}
Console.WriteLine("Press any key to continue.");
Console.ReadKey();
}
}
通過以上程式碼結果獲得的所有關於資料提供者的資訊都記錄在本地machine.config中,程式碼如下:
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
--><system.data>
<DbProviderFactories>
<add name="Odbc Data Provider" invariant="System.Data.Odbc"
description=".Net Framework Data Provider for Odbc"
type="System.Data.Odbc.OdbcFactory,
System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
<add name="OleDb Data Provider" invariant="System.Data.OleDb"
description=".Net Framework Data Provider for OleDb"
type="System.Data.OleDb.OleDbFactory,
System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
<add name="OracleClient Data Provider" invariant="System.Data.OracleClient"
description=".Net Framework Data Provider for Oracle"
type="System.Data.OracleClient.OracleClientFactory, System.Data.OracleClient,
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<add name="SqlClient Data Provider" invariant="System.Data.SqlClient"
description=".Net Framework Data Provider for SqlServer"
type="System.Data.SqlClient.SqlClientFactory, System.Data, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<add name="Microsoft SQL Server Compact Data Provider"
invariant="System.Data.SqlServerCe.3.5"
description=".NET Framework Data Provider for Microsoft SQL Server Compact"
type="System.Data.SqlServerCe.SqlCeProviderFactory,
System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral,
PublicKeyToken=89845dcd8080cc91" />
DbProviderFactories>
system.data>
我們可以通過資料庫提供者列舉動態地新增各種不同型別資料庫連線並進行資料庫操作,或者通過配置檔案指定不同的資料庫連線無程式碼實現多種資料庫的連線和訪問。這對於資料庫客戶端應用程式和有多種資料來源的Web和Windows Form應用程式都簡化了繁雜的編碼工作。稍後會討論通過配置實現多種資料庫連線的方法。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-571189/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- C語言 列舉資料型別C語言資料型別
- 【C++】資料型別-列舉型C++資料型別
- 列舉python常用的資料結構Python資料結構
- 列舉繫結資料來源,獲取值
- intel realsense usb列舉,讀寫資料解析Intel
- Java 列舉、JPA 和 PostgreSQL 列舉JavaSQL
- 使用 【Ado.Net】 批量插入資料
- ADO.NET連線資料庫資料庫
- ado.net 連線資料庫資料庫
- 原始碼|什麼是服務提供者框架?舉例?原始碼框架
- 列舉和列舉的取值範圍
- ADO.net實現資料更新(一)
- 資料結構複習-01enum列舉型別資料結構型別
- Java列舉Java
- Swift,列舉Swift
- USB裝置的列舉過程分析——資料結構先行資料結構
- 學習使用ADO.NET Data Services (ADO.NET 資料服務框架) - Part 1框架
- C# 列舉與位列舉概述C#
- 列舉工具類
- TypeScript 列舉enumTypeScript
- Java 列舉(enum)Java
- Swift-列舉Swift
- 自定義列舉
- java列舉類Java
- TypeScript 列舉指南TypeScript
- Java列舉使用Java
- C#:列舉C#
- 列舉程式 (轉)
- 列舉比較
- 列舉型別型別
- 列舉 OLTP 型資料庫,8a 和 Hadoop 各自所對應的 資料特徵資料庫Hadoop特徵
- ADO.NET 快速入門(十):過濾資料
- Java列舉-通過值查詢對應的列舉Java
- Java enum列舉類詳解 列舉的常見用法Java
- C/C++列舉enum分別列印輸出列舉子和列舉值的方法C++
- Ado.net中SQLServer資料庫連線池(轉)SQLServer資料庫
- 使用ADO.NET輕鬆操縱資料庫(一)資料庫
- 使用ADO.NET輕鬆操縱資料庫(二)資料庫