現在微軟提供了一種方法,也是微軟示例PetShop提供的解決方式;即使用Assembly反射加載訪問數據庫的類。
首先,創建一個空白解決方案,名字為:TestChangeDataBase,然後添加一個C#類庫工程,名字叫DBHelper,然後在類庫工程裡創建一個接口IDAL,具體代碼如下: namespace DBHelper
{
public interface IDAL
{
DataSet GetDataSet(string query);
}
}
保存後,關閉這個接口文件;再創建一個類文件OracleHelper.CS,用以訪問Oracle數據庫:此類要實現IDAL接口
示例代碼如下:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Data.OracleClient;
///
/// 訪問Oracle數據庫
///
///
namespace DBHelper
{
public class OracleHelper : IDAL
{
public OracleHelper()
{
//
// TODO: 在此處添加構造函數邏輯
//
}
#region IDAL 成員
public DataSet GetDataSet(string query)
{
OracleConnection con = new OracleConnection(ConfigurationSettings.AppSettings["oracle"]);
OracleDataAdapter da = new OracleDataAdapter(query, con);
DataSet ds = new DataSet();
da.Fill(ds);
return ds;
}
#endregion
}
}