Linq查询:无法将类型IEnumerable 转换为字符串更改.ToString()转换为(字符串)
我有一个包含的linq查询
select new Project() { Manager = list.Employee.Select(x => x.Manager).ToString() }).ToList();
这个汇编,但我最终得不到数据…我得到System.Linq.Enumerable+WhereSelectListIterator
“Manager”的值System.Linq.Enumerable+WhereSelectListIterator
所以我想我会改为(string)
而不是.ToString()
但这不起作用
select new Project() { Manager = (string)list.Employee.Select(x => x.Manager) }).ToList();
给我错误信息
无法将类型’System.Collections.Generic.IEnumerable’转换为’string’
你想要Manager
是什么,一个用逗号分隔的值列表或List
/ String[]
?
串:
Manager = string.Join(",",list.Employee.Select(x => x.Manager))
采集:
Manager = list.Employee.Select(x => x.Manager).ToList() // or Manager = list.Employee.Select(x => x.Manager).ToArray()
问题是list.Employee.Select(x => x.Manager)
返回一个管理Manager
集合,属性Manager
是一个字符串(?)。 您需要一些您想要的经理的条件。 例如,附加.First()
以获取集合中的第一个。
试试这个对我有用:
var returnCollection = (from manager in list.Employee select manager).ToList();