我想在IDbCommand
参数已经存在时更新它的值
public void AddParameter(IDbCommand command, string name, object value)
{
var parameter = command.CreateParameter();
parameter.ParameterName = "@" + name;
parameter.Value = value;
command.Parameters.Add(parameter);
}
我尝试将此添加到我的方法中,但它不适用于IDBCommand
,因为它是一个SqlCommand
选项。
if (command.Parameters.Contains("@" + name))
{
command.Parameters["@" + name].Value = value;
}
您需要将其强制转换为IDbDataParameter
因为IDataParameterCollection
索引器返回一个object
类型:
var parameterName = "@" + name;
if (command.Parameters.Contains(parameterName))
{
var parameter = command.Parameters[parameterName] as IDbDataParameter;
parameter.Value = value;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句