我正在尝试SELECT ALL使用 LINQ 向我的网格添加功能,但出现编译错误。
List<Person_> PeopleUpdated = People.ToList().ForEach(a => a.SELECTED = true).ToList();
Run Code Online (Sandbox Code Playgroud)
它说
无法将类型“void”隐式转换为“System.Collections.Generic.List < LogoSapHrIntegration.frmXmlUpload.Person_>”
我究竟做错了什么?
在List<T>.ForEach没有返回值(即无效),所以你不能运行ToList()对抗。(见MSDN)
ForEach列表中每个项目的特定操作(就像做一个真正的for循环一样)。
在你的情况下,一个简单的 for 循环来选择所有是最有效的。
foreach (var person in People)
person.Selected = true
Run Code Online (Sandbox Code Playgroud)