大概想实现下面的效果
if (Destination != "0")
{
SELECT_STRING+= "STRING1=@STRING1";
}
if (school != "0")
{
SELECT_STRING+= "STRING2=@STRING2";
}
if (datetime != "0")
{
SELECT_STRING+= "[STRING3]=@STRING3";
}
其中SQLHELP的参数需要SqlParameter数组,
我怎么根据参数的个数不同,添加多个参数呢 ? 在每一个IF里面自动添加参数。。
if (Destination != "0")
{
SELECT_STRING+= "STRING1=@STRING1";
}
if (school != "0")
{
SELECT_STRING+= "STRING2=@STRING2";
}
if (datetime != "0")
{
SELECT_STRING+= "[STRING3]=@STRING3";
}
其中SQLHELP的参数需要SqlParameter数组,
我怎么根据参数的个数不同,添加多个参数呢 ? 在每一个IF里面自动添加参数。。
ArrayList arrValue = new ArrayList ();
int i = 0;
if (1 == 2)
{
arr.Add("@STRING1");
arrValue.Add("STRING1");
i++;
}
if (1 < 2)
{ arr.Add("@STRING2");
arrValue.Add("STRING2");
i++;
}
if (3 > 2)
{
arr.Add("@STRING3");
arrValue.Add("STRING3");
i++;
} SqlParameter[] parm = new SqlParameter[i];
for (int j = 0; j < arr.Count; j++)
{
SqlParameter newPar = null;
parm[j] = new SqlParameter(arr[j].ToString(),arrValue[j].ToString()); parm.SetValue(newPar, i - 1);
}
for (int k = 0; k < i; k++)
{
Response.Write(parm[0].ParameterName);
Response.Write(parm[0].Value);
Response.Write("<br>");
}
简单写一个,期待更好的方法
ArrayList arrValue = new ArrayList ();
int i = 0;
if (1 == 2)
{
arr.Add("@STRING1");
arrValue.Add("STRING1");
i++;
}
if (1 < 2)
{ arr.Add("@STRING2");
arrValue.Add("STRING2");
i++;
}
if (3 > 2)
{
arr.Add("@STRING3");
arrValue.Add("STRING3");
i++;
} SqlParameter[] parm = new SqlParameter[i];
for (int j = 0; j < arr.Count; j++)
{
parm[j] = new SqlParameter(arr[j].ToString(),arrValue[j].ToString()); //parm.SetValue(newPar,j);
}
for (int k = 0; k < i; k++)
{
Response.Write(parm[k].ParameterName);
Response.Write(parm[k].Value);
Response.Write("<br>");
}
params.Add(xxx);
SqlParameter[] Params = params.ToArray();