如何使用 LINQ where statemetn 重写给定的 foreach 循环?
List<ItemData> dbItems = _dataService.GetAllItems();
List<ItemModel> modeList = new List<ItemModel>();
foreach (ItemData p in dbItems )
{
ItemModel m = Mapper.ItemDataToModelMap(p);
modeList.Add(m);
}
我已经尝试过了,但这给出了错误:无法将类型'System.Collections.Generic.IEnumerable'隐式转换为'System.Collections.Generic.IEnumerable'...
var modeList= from m in dbItems
select new {item = Mapper.ItemDataToModelMap(m)
};
编辑:使用它的方法应该返回 IEnumerable,所以这是错误原因。我不应该更改返回类型,而是更改代码和匿名类型。