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();