List< object>を変換するにはどうすればよいですか? C#でハッシュテーブルに?

StackOverflow https://stackoverflow.com/questions/166174

  •  03-07-2019
  •  | 
  •  

質問

ID、コード、説明を含むオブジェクトのリストがあります。

キーとして説明を使用し、値として Id を使用して、このリストをハッシュテーブルに変換する必要があります。

これは、HashtableをJSONにシリアル化できるようにするためです。

List< Object>から変換する方法はありますかリスト内の各項目を調べるループを作成せずにHashtableにアクセスしますか?

役に立ちましたか?

解決

リストにFoo型のオブジェクト(int Idと文字列Descriptionが含まれる)が含まれていると仮定しましょう。

Linqを使用して、そのリストを次のような辞書に変換できます。

var dict = myList.Cast<Foo>().ToDictionary(o => o.Description, o => o.Id);

他のヒント

Linqにアクセスできる場合は、 ToDictionary を使用できます。関数。

theList.ForEach(delegate(theObject obj) { dic.Add(obj.Id, obj.Description); });

System.Collections.ObjectModel.KeyedCollection&lt; TKey、TItem&gt; もご覧ください。あなたがやりたいことにより良くマッチしているようです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top