国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

用C#實現(xiàn)的數(shù)據(jù)庫抽象工廠(二)

2024-07-21 02:19:45
字體:
來源:轉載
供稿:網(wǎng)友
用c#實現(xiàn)的數(shù)據(jù)庫抽象工廠(二)

以下3個類分別是factory針對sqlserver專用連接、oledb連接和odbc連接時的具體實現(xiàn):

(3)sqlfactory.cs

using system;
using system.data;
using system.data.sqlclient;
using system.configuration;

namespace dbservice
{
/// <summary>
/// 針對sqlserver專用連接的工廠
/// </summary>
public class sqlfactory : abstractdbfactory
{
/// <summary>
/// 構造函數(shù)
/// </summary>
public sqlfactory()
{
}

/// <summary>
/// 建立默認connection對象
/// </summary>
/// <returns>connection對象</returns>
public idbconnection createconnection()
{
return new sqlconnection();
}

/// <summary>
/// 根據(jù)連接字符串建立connection對象
/// </summary>
/// <param name="strconn">連接字符串</param>
/// <returns>connection對象</returns>
public idbconnection createconnection(string strconn)
{
return new sqlconnection(strconn);
}

/// <summary>
/// 建立command對象
/// </summary>
/// <returns>command對象</returns>
public idbcommand createcommand()
{
return new sqlcommand();
}

/// <summary>
/// 建立dataadapter對象
/// </summary>
/// <returns>dataadapter對象</returns>
public idbdataadapter createdataadapter()
{
return new sqldataadapter();
}

/// <summary>
/// 根據(jù)connection建立transaction
/// </summary>
/// <param name="mydbconnection">connection對象</param>
/// <returns>transaction對象</returns>
public idbtransaction createtransaction(idbconnection mydbconnection)
{
return mydbconnection.begintransaction();
}

/// <summary>
/// 根據(jù)command建立datareader
/// </summary>
/// <param name="mydbcommand">command對象</param>
/// <returns>datareader對象</returns>
public idatareader createdatareader(idbcommand mydbcommand)
{
return mydbcommand.executereader();
}

/// <summary>
/// 獲得連接字符串
/// </summary>
/// <returns>連接字符串</returns>
public string getconnectionstring()
{
string strserver = configurationsettings.appsettings["sqlserverserver"];
string strdatabase = configurationsettings.appsettings["sqlserverdatabase"];
string struid = configurationsettings.appsettings["sqlserveruid"];
string strpwd = configurationsettings.appsettings["sqlserverpwd"];
string strconnectionstring = "server = " + strserver + "; database = " + strdatabase + "; uid = " + struid + "; pwd = " + strpwd + ";";
return strconnectionstring;
}

}
}


(4)oledbfactory.cs

using system;
using system.data;
using system.data.oledb;
using system.configuration;

namespace dbservice
{
/// <summary>
/// 針對oledb連接的工廠
/// </summary>
public class oledbfactory : abstractdbfactory
{
/// <summary>
/// 構造函數(shù)
/// </summary>
public oledbfactory()
{
}

/// <summary>
/// 建立默認connection對象
/// </summary>
/// <returns>connection對象</returns>
public idbconnection createconnection()
{
return new oledbconnection();
}

/// <summary>
/// 根據(jù)連接字符串建立connection對象
/// </summary>
/// <param name="strconn">連接字符串</param>
/// <returns>connection對象</returns>
public idbconnection createconnection(string strconn)
{
return new oledbconnection(strconn);
}

/// <summary>
/// 建立command對象
/// </summary>
/// <returns>command對象</returns>
public idbcommand createcommand()
{
return new oledbcommand();
}

/// <summary>
/// 建立dataadapter對象
/// </summary>
/// <returns>dataadapter對象</returns>
public idbdataadapter createdataadapter()
{
return new oledbdataadapter();
}

/// <summary>
/// 根據(jù)connection建立transaction
/// </summary>
/// <param name="mydbconnection">connection對象</param>
/// <returns>transaction對象</returns>
public idbtransaction createtransaction(idbconnection mydbconnection)
{
return mydbconnection.begintransaction();
}

/// <summary>
/// 根據(jù)command建立datareader
/// </summary>
/// <param name="mydbcommand">command對象</param>
/// <returns>datareader對象</returns>
public idatareader createdatareader(idbcommand mydbcommand)
{
return mydbcommand.executereader();
}

/// <summary>
/// 獲得連接字符串
/// </summary>
/// <returns>連接字符串</returns>
public string getconnectionstring()
{
string strprovider = configurationsettings.appsettings["oledbprovider"];
string strdatasource = configurationsettings.appsettings["oledbdatasource"];
string strconnectionstring = "provider = " + strprovider + ";data source = " + strdatasource + ";";
return strconnectionstring;
}

}
}


(5)odbcfactory.cs

using system;
using system.data;
using system.data.odbc;
using system.configuration;

namespace dbservice
{
/// <summary>
/// 針對odbc連接的工廠
/// </summary>
public class odbcfactory : abstractdbfactory
{
/// <summary>
/// 構造函數(shù)
/// </summary>
public odbcfactory()
{
}

/// <summary>
/// 建立默認connection對象
/// </summary>
/// <returns>connection對象</returns>
public idbconnection createconnection()
{
return new odbcconnection();
}

/// <summary>
/// 根據(jù)連接字符串建立connection對象
/// </summary>
/// <param name="strconn">連接字符串</param>
/// <returns>connection對象</returns>
public idbconnection createconnection(string strconn)
{
return new odbcconnection(strconn);
}

/// <summary>
/// 建立command對象
/// </summary>
/// <returns>command對象</returns>
public idbcommand createcommand()
{
return new odbccommand();
}

/// <summary>
/// 建立dataadapter對象
/// </summary>
/// <returns>dataadapter對象</returns>
public idbdataadapter createdataadapter()
{
return new odbcdataadapter();
}

/// <summary>
/// 根據(jù)connection建立transaction
/// </summary>
/// <param name="mydbconnection">connection對象</param>
/// <returns>transaction對象</returns>
public idbtransaction createtransaction(idbconnection mydbconnection)
{
return mydbconnection.begintransaction();
}

/// <summary>
/// 根據(jù)command建立datareader
/// </summary>
/// <param name="mydbcommand">command對象</param>
/// <returns>datareader對象</returns>
public idatareader createdatareader(idbcommand mydbcommand)
{
return mydbcommand.executereader();
}

/// <summary>
/// 獲得連接字符串
/// </summary>
/// <returns></returns>
public string getconnectionstring()
{
string strdriver = configurationsettings.appsettings["odbcdriver"];
string strdbq = configurationsettings.appsettings["odbcdbq"];
string strconnectionstring = "driver={" + strdriver + "}; dbq=" + strdbq + ";";
return strconnectionstring;
}

}
}


待續(xù)......

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 连南| 务川| 乐至县| 沽源县| 潼南县| 来凤县| 台南市| 皮山县| 阜平县| 万盛区| 唐河县| 伊通| 桂东县| 荥经县| 全椒县| 乐清市| 莱芜市| 阿坝县| 都匀市| 松阳县| 勃利县| 中阳县| 集贤县| 深泽县| 绥宁县| 宜城市| 瑞昌市| 乐亭县| 太仓市| 武邑县| 江山市| 雷山县| 巴里| 天峨县| 满洲里市| 本溪| 富民县| 饶阳县| 高青县| 山西省| 仪征市|