如何将IDictionary<Guid,string>
转换为IEnumerable<SelectListItem>
? 我想使用字符串作为SelectListItem
。将IDictionary <Guid,string>转换为IEnumerable <SelectListItem>
2
A
回答
2
如果你想使用GUID作为值,你可以使用
dictionary.Select(x => new SelectListItem { Text = x.Value, Value = x.Key })
2
那么你可以只使用
dictionary.Values().Select(x => new SelectedListItem { Text = x })
要知道,它可能不是一个有用的顺序:Dictionary<,>
本质上是无序的(或者更确切地说,该命令可能会改变,不应该依赖)。
0
像这样的东西应该做你想要什么:
var selectList = dictionary
.OrderBy(kvp => kvp.Value) // Order the Select List by the dictionary value
.Select(kvp => new SelectListItem
{
Selected = kvp.Key == model.SelectedGuid, // optional but would allow you to maintain the selection when re-displaying the view
Text = kvp.Value,
Value = kvp.Key
})
.ToList();
0
使用LINQ,你可以做这样的事情,
var theSelectList = from dictItem in dict
select new SelectListItem()
{
Text = dictItem.Value,
Value = dictItem.Key.ToString()
};
相关问题
- 1. 如何将IDictionary <TKey,列表<TValue>>转换为IDictionary <TKey,IEnumerable <TValue>>?
- 2. 嵌套接口:将IDictionary <TKey,IList <TValue>>转换为IDictionary <TKey,IEnumerable <TValue>>?
- 3. 将IDictionary <string,object>转换为类
- 4. 如何将IEnumerable <IEnumerable <T>>转换为IEnumerable <T>
- 5. 如何将IEnumerable <IEnumerable <IGrouping <int,string> >>转换为IEnumerable <IEnumerable <string>>
- 6. 如何将`IEnumerable <Unknown T>`转换为`IEnumerable <Whatever>`
- 7. 如何将managementobject集合转换为IEnumerable <IEnumerable <IPropertyData >>?
- 8. 将IEnumerable <X>转换为IEnumerable <Y>
- 9. 如何将List <IEnumerable <ProductViewModel >>转换为<IEnumerable <ProductViewModel >>?
- 10. IEnumerable的<T>到的IDictionary <U,IEnumerable的<T>>
- 11. 将IEnumerable <XElement>转换为XElement
- 12. 将DataRowCollection转换为IEnumerable <T>
- 13. 将IEnumerable <dynamic>转换为DataTable
- 14. 将IEnumerable <dynamic>转换为JsonArray
- 15. 将IEnumerable <int>转换为int []
- 16. 如何将IEnumerable <IEnumerable <T>>转换为列表<string>?
- 17. 将IGrouping <TKey,TValue>转换为IDictionary的推荐方法<TKey,IEnumerable <TValue>>
- 18. 无法从IEnumerable <T>转换为IEnumerable <T>
- 19. 如何将IObservable <IObservable <T>>转换为IObservable <IEnumerable <T>>?
- 20. 如何将列表<object>转换为IEnumerable <T>
- 21. 将数据集转换为IQueryable <T>或IEnumerable <T>
- 22. 将IEnumerable <X>转换为列表<Y>
- 23. 将IEnumerable <IGrouping<,>>转换为数组
- 24. 如何将IEnumerable <IGrouping <int,DataRow >>转换为DataTable?
- 25. IDictionary <string,IDictionary <string,ICollection <string> >>转至LINQ
- 26. 自IEnumerable <IEnumerable的<string>>转换为ICollection的<T>
- 27. 在C#中,如何将IEnumerable <IMyInterface>的数组转换为IEnumerable <T>?
- 28. 无法将IEnumerable的匿名类型转换为IEnumerable <dynamic>?
- 29. 转换IEnumerable <dynamic>?
- 30. IEnumerable的<T>转换