方法1:
public void method1(DataTable ServerGroupIds)
{
obj.method2(ServerGroupIds);
}
方法2:
public static void method2(string[] servergroups)
{
obj.Message = userName + " has Un-Restricted the Project.";
}
现在我想将DataTable值传递给method2 String [] servergroups 如何将DataTable值传递给字符串值数组?
抱歉,忘了提一下我的DataTable中有2列。 !st列是ProjectId,第二列是服务器组ID。现在我只需要在我的字符串数组
中使用ServerGroup Id答案 0 :(得分:1)
试试这个
public void method1(DataTable ServerGroupIds)
{
string [] serverGroups = ServerGroupIds.AsEnumerable().Select(t => t.Field<string>("ID")).ToArray<string>();
obj.method2(serverGroups );
}
不要忘记包含System.Linq
在t.Field<string>("ID")
。将“ID”替换为要放入数组的数据表中列的名称
答案 1 :(得分:0)
对于单行,您可以这样做:
var rowAsString = string.Join(", ", ServerGroupIds.Rows[0].ItemArray);
现在将所有行(通过您的DataTable循环)rowAsString
添加到列表中:
List<string> list = new List<string>();
for (int i = 0; i < ServerGroupIds.Rows.Count; i++)
{
string rowAsString = string.Join(", ", ServerGroupIds.Rows[i].ItemArray);
list .Add(rowAsString );
}
string[] array = list.ToArray();
并传递给method2
:
obj.method2(array);