如何从对象 [] 获取参数值

本文关键字:获取 参数 对象 | 更新日期: 2023-09-27 18:29:17

    //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();我只得到参数的名称,但我想要参数值。

如何从对象 [] 获取参数值

假设param是 SqlParameter 的实例

string m = (param.Value ?? "").ToString();

如果param SqlParameter[]则需要索引到数组中,然后查询值

string m = (param[4].Value ?? "").ToString();