사전을 목록으로 변환하려고 할 때 문제가 있습니다.
예를 들어 템플릿 문자열을 키로, 문자열을 값으로 사용하는 사전이 있습니다. 그런 다음 사전 키를 문자열로 목록 컬렉션으로 변환하고 싶습니다.
Dictionary<string, string> dicNumber = new Dictionary<string, string>();
List<string> listNumber = new List<string>();
dicNumber.Add("1", "First");
dicNumber.Add("2", "Second");
dicNumber.Add("3", "Third");
// So the code may something look like this
//listNumber = dicNumber.Select(??????);
답변
키를 자체 목록으로 변환하려면 :
listNumber = dicNumber.Select(kvp => kvp.Key).ToList();
또는 길이를 줄이고 select를 사용하여 귀찮게하지 않아도됩니다.
listNumber = dicNumber.Keys.ToList();
답변
또는 :
var keys = new List<string>(dicNumber.Keys);
답변
Linq를 사용하려면 다음 스 니펫을 사용할 수 있습니다.
var listNumber = dicNumber.Keys.ToList();
답변
키를 변환하려면 :
List<string> listNumber = dicNumber.Keys.ToList();
그렇지 않으면 값을 변환하려는 경우 :
List<string> listNumber = dicNumber.Values.ToList();
답변
foreach (var item in dicNumber)
{
listnumber.Add(item.Key);
}
답변
사전 키 컬렉션을 하나의 메서드 인수로 전달하려는 경우.
List<string> lstKeys = Dict.Keys;
Methodname(lstKeys);
-------------------
void MethodName(List<String> lstkeys)
{
`enter code here`
//Do ur task
}