C#/.NET/.NET Core应用程序编程开发中如何向SqlCommand传递数组参数?
2.75K 次浏览
C#/.NET/.NET Core应用程序编程开发中,在做IN
查询的时候,如何向SqlCommand传递数组参数?
比如有类似这样的查询语句,如下:
string sqlCommand = "SELECT * from TableA WHERE Age IN (@Age)";
SqlConnection sqlCon = new SqlConnection(connectString);
SqlCommand sqlComm = new SqlCommand();
sqlComm.Connection = sqlCon;
sqlComm.CommandType = System.Data.CommandType.Text;
sqlComm.CommandText = sqlCommand;
sqlComm.CommandTimeout = 300;
sqlComm.Parameters.Add("@Age", SqlDbType.NVarChar);
StringBuilder sb = new StringBuilder();
foreach (ListItem item in ddlAge.Items)
{
if (item.Selected)
{
sb.Append(item.Text + ",");
}
}
sqlComm.Parameters["@Age"].Value = sb.ToString().TrimEnd(',');
其中的Age
查询条件是一个数组,如何将这个数组作为SqlCommand
的参数传递到需要执行的SQL语句中呢?