KeyValuePairのIEnumerable<KeyValuePair<string,string>>
を匿名型に変換することはできますか?KeyValuePairコレクションを匿名型に変換する
Dictionary<string, string> dict= new Dictionary<string, string>();
dict.add("first", "hello");
dict.add("second", "world");
var anonType = new{dict.Keys[0] = dict[0], dict.Keys[1] = dict[1]};
Console.WriteLine(anonType.first);
Console.WriteLine(anonType.second);
********************output*****************
hello
world
私は、WSDLに存在しないオブジェクトを表しWebサービスからオブジェクトを取得していますので、私はこれをやりたい理由があります。返されるオブジェクトには、カスタムフィールドとその値を含むKeyValuePairコレクションのみが含まれます。これらのカスタムフィールドは何でも構いませんので、私は本当にXMLの逆シリアル化メソッドを最終的なオブジェクトにマッピングします(そのプロパティはグリッドにバインドされなければなりません)。
*ちょうど私がDictionary<string,string>
を使用したからといって、それは絶対的な辞書という意味ではありません。本当にそのIEnumerable<KeyValuePair<string,string>>
私はこれを行う方法にしようとしましたが、空白を描いています。これはc#.NET 4.0です。
匿名型ではなく、動的な型指定が必要です。だから、C#4の「動的」機能を調べるべきです。 – CodesInChaos
あなたは、(a)「最初の」または「2番目の」が本当にそこにあるかどうかわからない、何かになる可能性がありますが、(b)anonType.firstおよびanonType秒? –