C#의 hashtable로 목록 를 변환하려면 어떻게해야합니까?
문제
ID, 코드 및 설명이 포함 된 개체 목록이 있습니다.
이 목록을 사용하여 해시 테이블로 변환해야합니다. 설명 열쇠와 ID 가치로.
그러면 해시 가능이 JSON으로 직렬화 될 수 있습니다.
목록에서 변환하는 방법이 있습니까?u003CObject> 목록의 각 항목을 통과하기 위해 루프를 쓰지 않고 해시 테이블에?
해결책
목록에 FOO 형 객체가 포함되어 있다고 가정 해 봅시다 (int id 및 문자열 설명 포함).
LINQ를 사용하여 해당 목록을 다음과 같은 사전으로 전환 할 수 있습니다.
var dict = myList.Cast<Foo>().ToDictionary(o => o.Description, o => o.Id);
다른 팁
LINQ에 액세스 할 수있는 경우 사용할 수 있습니다. 유아 기능.
theList.ForEach(delegate(theObject obj) { dic.Add(obj.Id, obj.Description); });
또한 System.Collections.ObjectModel.KeyedCollection<TKey, TItem>
. 당신이하고 싶은 일과 더 잘 어울리는 것 같습니다.
제휴하지 않습니다 StackOverflow