自己常用到的自定義公共類(已測試通過)
2024-07-10 12:40:20
供稿:網友
using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.IO;
/*
* AUTHOR:ZHANGLEI
* CREATE DATE:2007.1.5
* 功能:BLL層,實現了數據庫操作的封裝
* 并且提供了足夠的執行存儲過程的參數組合
* DESCRIPTION:本類中用到了方法重載
* ExecuteDataSet方法在本類中實現了四次重載
* */
namespace job_17
{
/// <summary>
/// job17 的摘要說明。
/// </summary>
public class job17
{
private readonly string P_Con=ConfigurationSettings.AppSettings["P_Con"].ToString();
public job17()
{
//
// TODO: 在此處添加構造函數邏輯
//
}
#region "執行任意參數組合的存儲過程"
/// <summary>
/// 命令準備操作,提供足夠多的參數組合
/// 本類中一個比較重要的方法
/// </summary>
public void preparecommand(SqlConnection myconn,SqlCommand mycomm,SqlTransaction trans,CommandType cmdType,string cmdText,SqlParameter[] param) //注意里面的參數
{
if (myconn.State!=ConnectionState.Open)
{
myconn.Open();
}
mycomm.Connection=myconn;
mycomm.CommandText=cmdText;
if (trans!=null)
{
mycomm.Transaction=trans;
}
mycomm.CommandType=cmdType;
if (param!=null)
{
foreach(SqlParameter parameter in param)
{
mycomm.Parameters.Add(parameter);
}
}
}
/// <summary>
/// 第一個返回DataSet類型的ExecuteDataSet方法
/// </summary>
public DataSet ExecuteDataSet(SqlConnection myconn,CommandType cmdType,string cmdText,SqlParameter[] commandpara)
{
SqlCommand mycomm=new SqlCommand();
preparecommand(myconn,mycomm,(SqlTransaction)null,cmdType,cmdText,commandpara);
SqlDataAdapter adpt=new SqlDataAdapter(mycomm); //調用上方的preparecommand方法
DataSet ds=new DataSet();
adpt.Fill(ds);