栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > asp

自己常用到的自定义公共类(已测试通过)

asp 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

自己常用到的自定义公共类(已测试通过)

using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.IO;

namespace job_17
{
 /// 
 /// job17 的摘要说明。
 /// 

 public class job17
 {
  private readonly string P_Con=ConfigurationSettings.AppSettings["P_Con"].ToString();
  public job17()
  {
   //
   // TODO: 在此处添加构造函数逻辑
   //
  }
  #region "执行任意参数组合的存储过程"
  /// 
  /// 命令准备操作,提供足够多的参数组合
  /// 本类中一个比较重要的方法
  /// 

  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);
    }
   }
  }
  /// 
  /// 第一个返回DataSet类型的ExecuteDataSet方法
  /// 

  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);
   mycomm.Parameters.Clear();
   return ds;
  }
  /// 
  /// 第二个返回DataSet类型的ExecuteDataSet方法
  /// 是在第一个方法的基础上实现,实现了ExecuteDataSet方法的重载
  /// 

  public DataSet ExecuteDataSet (string connstr,CommandType cmdType,string cmdText,SqlParameter[] cmdpara)//方法重载,在第一种的基础上重载,以便提供足够多的参数组合
  {
   using(SqlConnection myconn=new SqlConnection(connstr))
   {
   return ExecuteDataSet(myconn,cmdType,cmdText,cmdpara);
   }
  }
  /// 
  /// 第三个返回DataSet类型的ExecuteDataSet方法 
  /// 提供使用存储过程时不带参数的组合
  /// 

  public DataSet ExecuteDataSet(SqlConnection myconn,CommandType cmdType,string cmdText)
  {
  return ExecuteDataSet(myconn,cmdType,cmdText,(SqlParameter[])null);
  }
  /// 
  /// 第四个返回DataSet类型的ExecuteDataSet方法
  /// 提供使用存储过程时不带参数的组合
  /// 

  public DataSet ExecuteDataSet (string connstr,CommandType cmdType,string cmdText)
  {
  return ExecuteDataSet(connstr,cmdType,cmdText,(SqlParameter[])null);
  }
  #endregion
  #region "执行返回结果的sql语句"
  /// 
  /// 返回结果的类型为DataTable
  /// 

  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];
  }
  /// 
  /// 返回结果的类型为SqlDataReader
  /// 

  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;
  }
  /// 
  /// 返回结果的类型为DataSet 
  /// 

  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 "执行不返回结果的sql语句"
  /// 
  /// 执行不返回结果的sql语句
  /// 

  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)"
  /// 
  /// 使用事务处理
  /// 

  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
 }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/59798.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号