2014-03-14 60 views
0

方法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值傳遞到所述方法2的String [] servergroups 如何傳遞我的DataTable值轉換爲字符串值的數組?

對不起,忘了提及我在我的DataTable中有2列。 !st列是ProjectId,第二列是服務器組標識。現在我只需要的ServerGroup編號在我的字符串

+0

第二種方法中不使用'servergroups' –

+0

您可以告訴我們關於您的數據表的更多信息嗎?它是1列和N行(1xN)?還是很多列和N行(MxN)? – WozzeC

回答

1

試試這個

public void method1(DataTable ServerGroupIds) 
{ 

    string [] serverGroups = ServerGroupIds.AsEnumerable().Select(t => t.Field<string>("ID")).ToArray<string>(); 

obj.method2(serverGroups); 

} 

不要忘了包括System.Linqt.Field<string>("ID")。將「ID」替換爲要放入數組的表中列的名稱

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); 
相關問題