SqlParameter数组传参的方法

http://caixiaodi51.blog.163.com/blog/static/139336285201011462415952/

 

 

现在网上流行的用SqlParameter数组传参的方法我参与开发的一个高格教务系统一直在用,但在这过程中如果遇到需要传回的参数很多的时候(比如有十几二十个)就会比较麻烦,特别是当这十几个参数中我突然不要了哪一个时就要改SqlParameter数组中的索引值,还要一一得对应起来,这让人很痛苦.于是,我稍微改动了一下,让对应SqlParameter数组中的参数时更方便些.如下,

  public static class PublicVar
   {
   //定义操作字符 
   public static SqlCommand sqlcmd;//定义命令语句
   public static SqlParameter SqlParam;//定义SQL参数
     }

 //公共方法
public class PublicMethod
{
//使sql参数完整
public SqlParameter Param(string parameterName, object parameterValue, SqlDbType dbType)
{
//实例化
PublicVar.SqlParam = new SqlParameter();
//传回数据库里对应的参数名称
PublicVar.SqlParam.ParameterName = parameterName;
//参数的值
PublicVar.SqlParam.Value = parameterValue;
//参数的字段类型
PublicVar.SqlParam.SqlDbType = dbType;
return PublicVar.SqlParam;
 }

}

当引用的时候就这样:


//实例化BLL层
public static GoldCoinCode_BLL.PublicMethod myMethod = new GoldCoinCode_BLL.PublicMethod();


public static DataTable BLL_Select(string KaBianHao_Name1)
{
//定义一个SQL参数数组,并赋值参数名称,参数值,参数字段类型
SqlParameter[] SQlCMDpas = {
myMethod.Param("@type",1,SqlDbType.Int),
myMethod.Param("@KaBianHao_Name1",KaBianHao_Name1,SqlDbType.Char) 
};
//实例化DAL层对应的类,调用DAL类,传入参数
DataTable dt = GoldCoinCode_DAL.PublicMethod.DAL_SelectDB_Par("HuiYuanGuanLi_Select", SQlCMDpas);
return dt;
}

如此便不用一一去对应SqlParameter[]中的Value的值,方便许多.   

posted @ 2011-06-17 09:17  丁晨  阅读(6225)  评论(0编辑  收藏  举报