c# - C#中如何传递数组中的参数?

标签 c# arrays datarow

我想通过数组动态分配一个值参数。 例如,数组 arr_param 将包含两个值 [0] = "abc", [1] = "ZYX" .现在,我将分配它们。这里的问题是我必须指定正确的元素 [0],[1] 在运行 foreach 之后,我尝试这样做但失败了转换为整数

string[] arr_param  =  array_parameter.Split(';');
foreach (DataRow parmRow in parmsDataTable.Rows)
{
    string parmName = parmRow[parmNameDataColumn].ToString();
    cmd.Parameters.AddWithValue(parmName, arr_param[Convert.ToInt32(parmsDataTable.Rows)]);
}

我收到错误无法将类型为“System.Data.DataRowCollection”的对象转换为类型为“System.IConvertible”

最佳答案

parmsDataTable.Rows 是一个 DataRowCollection,它不能转换为 int

简单解决方案:

string[] arr_param  =  array_parameter.Split(';');
int counter = 0;
foreach (DataRow parmRow in parmsDataTable.Rows)
{
   string parmName = parmRow[parmNameDataColumn].ToString();
   cmd.Parameters.AddWithValue(parmName, arr_param[counter++)]);
}

或者:

string[] arr_param  =  array_parameter.Split(';');
foreach (DataRow parmRow in parmsDataTable.Rows)
{
   string parmName = parmRow[parmNameDataColumn].ToString();
   cmd.Parameters.AddWithValue(parmName,arr_param[parmsDataTable.Rows.IndexOf(parmRow))]);
}

关于c# - C#中如何传递数组中的参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37089271/

相关文章:

c# - SqlQuery 上的 Entity Framework 超时

c# - 将可空数组复制到相同基类型的非可空数组的有效方法?

Java While 循环和一维数组

c# - 如何在数据行 [] 的列中找到最大值?

c# - 将单行从一个数据表复制到另一个

c# - 遍历 ListView 数据

c# - 使用 RijndaelManaged 时出现 CryptographicException

java - 警告 BG8102 : has unknown base type android. app.IntentService。 (BG8102)。将 Java android 库绑定(bind)到 Xamarin 时

c# - 仅允许在 WPF 文本框中输入数字

c - 重新分配后打印字符串数组时遇到问题?