C# 如何使用MySqlParameterCollection.AddRange
我已经安装了Connector/NET 6.5.4。在VisualStutio中,IntelliSense建议使用一种名为MySqlParameterCollection.AddRange的方法,但是没有可用的文档,所以我不知道如何使用它。我搜索了一下,什么也没找到C# 如何使用MySqlParameterCollection.AddRange,c#,.net,mysql,C#,.net,Mysql,我已经安装了Connector/NET 6.5.4。在VisualStutio中,IntelliSense建议使用一种名为MySqlParameterCollection.AddRange的方法,但是没有可用的文档,所以我不知道如何使用它。我搜索了一下,什么也没找到 如何使用此方法以及文档在哪里?AddRange通常用于添加一组值。在本例中,我猜它希望您传递一个MySqlParameter的IEnumerable e、 g //列表实现IEnumerable var list=新列表(); va
如何使用此方法以及文档在哪里?
AddRange
通常用于添加一组值。在本例中,我猜它希望您传递一个MySqlParameter
的IEnumerable
e、 g
//列表实现IEnumerable
var list=新列表();
var paramCol=new MySqlParameterCollection();
//向列表中添加参数
// ...
//假设参数集合已设置
参数AddRange(列表);
您可以这样使用它
var myp = new MySqlParameterCollection();
myp.Add(new MySqlParameter(parameterName, dbType, size));
或
现在,您可以将其附加到您的命令对象,因为MySqlParameterCollection派生自DbParameterCollection,您可以查看每个其他ParameterCollection的示例。例如,SqlParameterCollection可以这样使用
SqlCommand cmd = new SqlCommand(pCommandText, GetConnection());
cmd.Parameters.Clear();
List<SqlParameter> list = new List<SqlParameter>();
list.Add(new SqlParameter("@p1", value1));
list.Add(new SqlParameter("@p2", value2));
list.Add(new SqlParameter("@p3", value3));
cmd.Parameters.AddRange(list.ToArray<SqlParameter>());
SqlCommand cmd=newsqlcommand(pCommandText,GetConnection());
cmd.Parameters.Clear();
列表=新列表();
添加(新的SqlParameter(“@p1”,value1));
添加(新的SqlParameter(“@p2”,value2));
添加(新的SqlParameter(“@p3”,value3));
cmd.Parameters.AddRange(list.ToArray());
以下是一种避免必须创建变量来保存参数数组的方法
使用(SqlCommand cm=newsqlcommand(sql,cn))
{
cm.Parameters.AddRange(
新的SqlParameter[]
{
新的SqlParameter(“@TaskID”,SqlDbType.Int){Value=(Int)dr[“BSTaskID”]},
新的SqlParameter(“@DateNow”,SqlDbType.DateTime){Value=DateTime.Now},
新的SqlParameter(“@ExecDate”,SqlDbType.DateTime){Value=ExecDate},
新的SqlParameter(“@UserId”,SqlDbType.Int){Value=(Int)dr[“BSUserId”]},
新的SqlParameter(“@TaskParameters”,SqlDbType.VarChar){Value=parametersXML}
});
cm.ExecuteNonQuery();
}
它非常类似于SqlParameterCollection版本:-基本上,它需要一个DbParameter数组,在本例中是MySqlParameter对象。是否缺少一些大括号?
MySqlParameter[] myArray = new MySqlParameter[] { new MySqlParameter(parameterName, dbType, size), new MySqlParameter(parameterName, dbType, size));
myp.AddRange(myArray);
SqlCommand cmd = new SqlCommand(pCommandText, GetConnection());
cmd.Parameters.Clear();
List<SqlParameter> list = new List<SqlParameter>();
list.Add(new SqlParameter("@p1", value1));
list.Add(new SqlParameter("@p2", value2));
list.Add(new SqlParameter("@p3", value3));
cmd.Parameters.AddRange(list.ToArray<SqlParameter>());