2016-08-09 73 views
0

konvertieren Ich übergebe den Dictionary-Parameter aus dem Javascript und versuche, das in eine Array-Liste zu konvertieren.How to Dictionary <String, Object> zu ArrayList in C# 3.5

Beispiel:

public void AssignEmployees(Dictionary<String, Object> _params) 
{ 
    ArrayList ArrayEx= null; 
    ArrayEx= (ArrayList)_params["Assignments"]; 

    ArrayList ArrayEx1= null; 
    ArrayEx1= (ArrayList)_params["balance"]; 
} 

Dies ist ein kurzes Beispiel, und ich habe die Bedingungen gegeben, die prüfen, ob „_params“ enthalten „Zuordnungen“ oder „Balance“ und dann vorwärts bewegen.

jedoch ein Fehler von Nicht imstande kehrt Objekt des Typs zu gegossen ‚System.Object []‘ ‚System.Collections.ArrayList‘ einzugeben.

Hier ist der Screenshot der idealen Daten dieses Wörterbuchobjekts.

enter image description here

Antwort

2

Sie können die Wörterbuch iterieren und verwenden Sie die .Add Methode des ArrayList das Objekt auf die Array-Liste einzufügen. Oder versuchen Sie es mit der Methode .AddRange mit Linq. Folgenden Code wird Ihnen helfen:

ArrayList ArrayEx = new ArrayList(); 
foreach (var item in _params) 
{ 
    ArrayEx.Add(item.Value); 
} 

// or like this 

ArrayEx.AddRange(_params.Select(x=>x.Value).ToList()); 

Denken Sie daran, können Sie die beiden Methoden auf eine instanzierte Objekt der Klasse Arraylist verwenden, so vergessen Sie nicht ArrayEx mit einer Instanz zu initialisieren.

+0

Thanks @ un-glücklich, dass gearbeitet! –

+0

@RaviVyas: Freut mich zu hören, glücklich, Ihnen zu helfen –

0

.Net 2,0

ArrayList ArrayEx = new ArrayList();

foreach (System.Collections.Generic.KeyValuePair<int, object> KeyVal in objdictionary) { ArrayEx.Add((object)KeyVal.Value); }