IDataParameter[]简单的说来,就是可以包含任何数据库参数的数组,这些参数可以是SqlParameter或者OleDbParameter,但是,IDataParameter[]不可以直接从SqlParameter[]转换过来。
下面是三种创建IDataParameter[]的方法:
一、直接构造:
IDataParameter[]
parameters = new IDataParameter[]{ sqlparameter1, sqlparameter2, new
SqlParameter(...) }
二、通过ArrayList转换。
ArrayList paramlist = new
ArrayList()
paramlist.Add( sqlparameter1 );
....
....
IDataParameter
param = (IDataParameter[]) paramlist.ToArray( typeof( IDataParameter )
);
三、通过其他Parameter类型的数组创建。
SqlParameter[] _param = new SqlParameter[]{
.... }
IDataParameter[] param = new IDataParameter[ _param.Length
];
_param.CopyTo( param, 0 );
IDataParameter[] parameters = new
IDataParameter[] { new SqlParameter("存储过程名1", "值1"), new SqlParameter("存储过程名2",
"值2") };
//传参数
ds = SH.ExecSPDataSet2("存储过程名",parameters);