最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

自己常用到的自定義公共類(已測試通過)

 更新時間:2007年03月21日 00:00:00   作者:  
using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.IO;
/*
 * AUTHOR:ZHANGLEI
 * CREATE DATE:2007.1.5
 * 功能:BLL層,實現(xiàn)了數(shù)據(jù)庫操作的封裝
 * 并且提供了足夠的執(zhí)行存儲過程的參數(shù)組合
 * DESCRIPTION:本類中用到了方法重載
 * ExecuteDataSet方法在本類中實現(xiàn)了四次重載
 * */
namespace job_17
{
 /// <summary>
 /// job17 的摘要說明。
 /// </summary>
 public class job17
 {
  private readonly string P_Con=ConfigurationSettings.AppSettings["P_Con"].ToString();
  public job17()
  {
   //
   // TODO: 在此處添加構(gòu)造函數(shù)邏輯
   //
  }
  #region "執(zhí)行任意參數(shù)組合的存儲過程"
  /// <summary>
  /// 命令準備操作,提供足夠多的參數(shù)組合
  /// 本類中一個比較重要的方法
  /// </summary>
  public void preparecommand(SqlConnection myconn,SqlCommand mycomm,SqlTransaction trans,CommandType cmdType,string cmdText,SqlParameter[] param) //注意里面的參數(shù)
  {
   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); //調(diào)用上方的preparecommand方法
   DataSet ds=new DataSet();
   adpt.Fill(ds);
   mycomm.Parameters.Clear();
   return ds;
  }
  /// <summary>
  /// 第二個返回DataSet類型的ExecuteDataSet方法
  /// 是在第一個方法的基礎上實現(xiàn),實現(xiàn)了ExecuteDataSet方法的重載
  /// </summary>
  public DataSet ExecuteDataSet (string connstr,CommandType cmdType,string cmdText,SqlParameter[] cmdpara)//方法重載,在第一種的基礎上重載,以便提供足夠多的參數(shù)組合
  {
   using(SqlConnection myconn=new SqlConnection(connstr))
   {
   return ExecuteDataSet(myconn,cmdType,cmdText,cmdpara);
   }
  }
  /// <summary>
  /// 第三個返回DataSet類型的ExecuteDataSet方法 
  /// 提供使用存儲過程時不帶參數(shù)的組合
  /// </summary>
  public DataSet ExecuteDataSet(SqlConnection myconn,CommandType cmdType,string cmdText)
  {
  return ExecuteDataSet(myconn,cmdType,cmdText,(SqlParameter[])null);
  }
  /// <summary>
  /// 第四個返回DataSet類型的ExecuteDataSet方法
  /// 提供使用存儲過程時不帶參數(shù)的組合
  /// </summary>
  public DataSet ExecuteDataSet (string connstr,CommandType cmdType,string cmdText)
  {
  return ExecuteDataSet(connstr,cmdType,cmdText,(SqlParameter[])null);
  }
  #endregion
  #region "執(zhí)行返回結(jié)果的sql語句"
  /// <summary>
  /// 返回結(jié)果的類型為DataTable
  /// </summary>
  public DataTable ExecuteDataTablesql(string sql)
  {
  SqlConnection myconn=new SqlConnection(P_Con);
   SqlDataAdapter adpt=new SqlDataAdapter(sql,myconn);
   DataSet ds=new DataSet();
   adpt.Fill(ds);
   return  ds.Tables[0];
  }
  /// <summary>
  /// 返回結(jié)果的類型為SqlDataReader
  /// </summary>
  public SqlDataReader ExecuteDataReadersql(string sql)
  {
  SqlConnection myconn=new SqlConnection(P_Con);
   SqlDataReader dr=null;
   SqlCommand mycomm=new SqlCommand(sql,myconn);
   try
   {
    myconn.Open();
    dr=mycomm.ExecuteReader();
   }
   catch
   {
//    StreamWriter sw=new StreamWriter(@"c:\err.txt",true,System.Text.Encoding.GetEncoding("GB2312"));
//    sw.WriteLine("============================出錯信息==========================");
//    sw.WriteLine("出錯時間:"+DateTime.Now.ToString()+"");
//    sw.WriteLine(ex.ToString());
//    sw.Close();
    throw;
   }
   return dr;
  }
  /// <summary>
  /// 返回結(jié)果的類型為DataSet 
  /// </summary>
  public DataSet ExecutesqlDS(string sql)
  {
    SqlConnection myconn=new SqlConnection(P_Con);
   SqlDataAdapter adpt=new SqlDataAdapter (sql,myconn);
   DataSet ds=new DataSet();
   adpt.Fill(ds);
   return ds;
  }
  #endregion
  #region "執(zhí)行不返回結(jié)果的sql語句"
  /// <summary>
  /// 執(zhí)行不返回結(jié)果的sql語句
  /// </summary>
  public void ExecuteNonsql(string sql)
  {
  SqlConnection myconn=new SqlConnection(P_Con);
   SqlCommand mycomm=new SqlCommand(sql,myconn);
   try
   {
    myconn.Open();
    mycomm.ExecuteNonQuery();
    myconn.Close();
   }
   catch(Exception e)
   {
//   StreamWriter sw=new StreamWriter(@"c:\err.txt",true,System.Text.Encoding.GetEncoding("GB2312"));
//    sw.WriteLine("============================出錯信息==========================");
//    sw.WriteLine("出錯時間:"+DateTime.Now.ToString()+"");
//    sw.WriteLine(e.ToString());
//    sw.Close();
    throw new Exception(e.Message,e);
   }
  }
  #endregion
  #region "啟用帶事務的sql語句如(insert,update)"
  /// <summary>
  /// 使用事務處理
  /// </summary>
  public void ExecuteTransql(string sql)
  {
  SqlConnection myconn=new SqlConnection(P_Con);
   SqlCommand mycomm=new SqlCommand(sql,myconn);
   SqlTransaction trans=null;
   try
   {
    myconn.Open();
    trans=myconn.BeginTransaction();
    mycomm.Transaction=trans;
    mycomm.ExecuteNonQuery();
    trans.Commit();
   }
   catch(Exception ex)
   {
   trans.Rollback();
    throw new Exception(ex.Message,ex);
   }
  }
  #endregion
 }
}

相關文章

  • asp.net DbProviderFactory的使用-示例

    asp.net DbProviderFactory的使用-示例

    NET 2.0有一個抽象工廠模式的典型應用:通過DBProviderFactory 可以對不同數(shù)據(jù)庫進行操作。
    2009-11-11
  • C# GetWindowRect簡介及使用說明

    C# GetWindowRect簡介及使用說明

    GetWindowRect返回指定窗口的邊框矩形的尺寸。該尺寸以相對于屏幕坐標左上角的屏幕坐標給出,需要的朋友可以了解下
    2012-12-12
  • WPF實現(xiàn)雷達掃描圖的繪制詳解

    WPF實現(xiàn)雷達掃描圖的繪制詳解

    這篇文章主要介紹了如何利用WPF實現(xiàn)雷達掃描圖的繪制,文中的示例代碼講解詳細,對我們學習或工作有一定幫助,需要的可以參考一下
    2022-05-05
  • .NET簡單工廠模式講解

    .NET簡單工廠模式講解

    這篇文章主要為大家詳細介紹了ASP.NET簡單工廠模式的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • asp.net中獲取新增加記錄的ID Access版

    asp.net中獲取新增加記錄的ID Access版

    在實際開發(fā)中有時需要獲取新增加的記錄的ID。如以新增加ID為文件名生成靜態(tài)頁等
    2012-03-03
  • ASP.NET筆記之 控件與母板的區(qū)別分析

    ASP.NET筆記之 控件與母板的區(qū)別分析

    本篇文章小編為大家介紹,ASP.NET筆記之 控件與母板的區(qū)別分析。需要的朋友參考下
    2013-04-04
  • c# 可變數(shù)目參數(shù)params實例

    c# 可變數(shù)目參數(shù)params實例

    一般來說,參數(shù)個數(shù)都是固定的,定義為集群類型的參數(shù)可以實現(xiàn)可變數(shù)目參數(shù)的目的,但是.NET提供了更靈活的機制來實現(xiàn)可變數(shù)目參數(shù),這就是使用params修飾符
    2012-11-11
  • .net core靜態(tài)中間件的使用

    .net core靜態(tài)中間件的使用

    本文主要整理了靜態(tài)中間件的使用,學習.net core的朋友可以參考下本文
    2021-06-06
  • 詳解ASP.NET MVC3:Razor的@:和語法

    詳解ASP.NET MVC3:Razor的@:和語法

    這篇文章主要介紹了詳解ASP.NET MVC3:Razor的@:和語法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • .net通過Action進行Options參數(shù)的傳遞的方法

    .net通過Action進行Options參數(shù)的傳遞的方法

    在.NET Core中,使用Action和Options參數(shù)方式配置服務并將配置信息對象注冊到IServiceCollection的好處在于,它提供了更高級別的可配置性和可擴展性,這篇文章主要介紹了.net通過Action進行Options參數(shù)的傳遞,你知道是怎么實現(xiàn)的嗎,需要的朋友可以參考下
    2023-12-12

最新評論

应用必备| 辽阳市| 崇信县| 海原县| 响水县| 夏津县| 广饶县| 罗田县| 南城县| 土默特右旗| 乐山市| 古丈县| 武乡县| 玛多县| 玉环县| 绵竹市| 镇江市| 旅游| 汝阳县| 科尔| 五常市| 高青县| 柘城县| 会泽县| 保亭| 凤城市| 公安县| 白玉县| 嘉义市| 油尖旺区| 黄冈市| 福清市| 邵阳市| 焦作市| 镇平县| 张家界市| 胶南市| 永丰县| 徐州市| 合江县| 娄烦县|