//SqlParameter
public static SqlParameter[] SetParameter(string strconn, string spName, Hashtable ht)
{
SqlParameter[] parameters = GetSpParameterSet(strconn, spName);
for (int i = 0; i < parameters.Length; i++)
{
if (ht.ContainsKey(parameters[i].ParameterName))
{
if (parameters[i].Direction != ParameterDirection.Output)
{
parameters[i].Value = ht[parameters[i].ParameterName];
}
}
}
return parameters;
}
用法
object[] param;
ht.Add("@p1", strSearch.ToString());
ht.Add("@p2", Info.Email);
ht.Add("@p3", "some value");
ht.Add("@p4", RoleID);
ht.Add("@p5", strlocation);Hashtable ht = new Hashtable();
param = SqlHelperParameterCache.SetParameter(ParameterCollector.GetConString(), "StoredProcedure1", ht);
我有上面的代码片段,需要获取参数的值。
如果我尝试string m = param.GetValue(4).ToString();
我只获取参数的名称,但我想要参数值。
答案 0 :(得分:2)
假设param
是SqlParameter
string m = (param.Value ?? "").ToString();
如果param
为SqlParameter[]
,那么您需要索引数组并然后查询值
string m = (param[4].Value ?? "").ToString();