2013-07-17 24 views
1

我有從BizTalk生成的架構。它不理解字典集合,因此它只是將其轉換爲字符串和字符串的鍵值對的數組。現在,當我在一個服務重定向請求我得到我如何將字典字符串字符串轉換爲使用linq和c字符串和字符串的鍵值對數組#

Dictionary<string, string> valuePairs 

當我看着到reference.cs文件,我可以看到這樣的:

public bool ProcessMessage(string code, string template, Service.Proxy.ArrayOfKeyValueOfstringstringKeyValueOfstringstring[] valuePairs) 

我這怎麼能字典轉換爲數組使用linq的字符串字符串的鍵值的?我知道使用linq很容易做到這一點,但任何幫助真的會被讚賞。

到目前爲止我試過,但不起作用:

ArrayOfKeyValueOfstringstringKeyValueOfstringstring[] array = 
        valuePairs.Select(pair => string.Format("{0},{1}", pair.Key, pair.Value)) 
       .ToArray(KeyValuePair<string,string>); 
+8

什麼是ArrayOfKeyValueOfstringstringKeyValueOfstringstring應該是? ! –

+0

字符串和字符串的鍵值對的數組名稱是如此有線,它發生在代理生成 – Bravo11

回答

4

嘗試下面,你可能需要更改新對象的屬性集相應

ArrayOfKeyValueOfstringstringKeyValueOfstringstring[] array = 
        valuePairs.Select(pair => 
        new ArrayOfKeyValueOfstringstringKeyValueOfstringstring(){ 
         Key= pair.Key, Value= pair.Value}).ToArray(); 
+0

真棒謝謝@Damith你是偉大的! – Bravo11

0

你可以做什麼這將您的字典轉換爲所需的陣列:

KeyValuePair<string, string>[] kvps = valuePairs.ToArray(); 
相關問題