【发布时间】:2015-10-07 12:01:40
【问题描述】:
我正在创建一个必须使用或不使用参数的方法。 我正在使用对象数组,这样我就可以同时保存字符串、整数、二进制类型等。
方法: SQLDB_UsingReader(string strSQL_WithParam, params object[,] obj)
错误: 数组必须是一维数组。
附言 此方法 SQLDB_UsingReader(string strSQL_WithParam, object[,] obj) 有效,但是当我添加“params”作为创建可选参数时搜索的解决方案时,会发生错误.
代码
public void SQLDB_UsingReader(string strSQL_WithParam, params object[,] obj)
{
try
{
using (SqlCommand mCmd = new SqlCommand(strSQL_WithParam, mConn))
{
for (int i = 0; i < obj.Length / 2; i++)
{
if (obj[i, 1] == null || obj[i, 1].ToString() == "" || obj[i, 1].ToString().Length == 0)
{ mCmd.Parameters.Add(new SqlParameter(obj[i, 0].ToString(), DBNull.Value)); }
else
{ mCmd.Parameters.Add(new SqlParameter(obj[i, 0].ToString(), obj[i, 1])); }
}
mConn.Open();
mDataReader = mCmd.ExecuteReader();
mConn.Close();
}
}
catch (Exception ex) { ex.ToString(); }
}
【问题讨论】:
-
您能否举例说明您希望如何调用您的方法(如果您可以使其工作)?
-
@sstan :我可以将其用作 SQLDB_UsingReader("select * from table") 或 SQLDB_UsingReader("select * from table where id=@ID",obj) where obj has "Parameter_Name"," Parameter_Value"
标签: c#