是否可以在ForEach扩展方法中选择多个entiies?
(即)
部分代码给出
DataTableA.AsEnumerable().ToList().
ForEach(x=>
{
x.SetField<string>("Name","Jon Skeet"),
x.SetField<string>("msg","welcome")
});
Run Code Online (Sandbox Code Playgroud)
当我在ForEach中应用多个选择时
x=>
{
x.SetField<string>("Name","Jon Skeet"),
x.SetField<string>("msg","welcome")
}
Run Code Online (Sandbox Code Playgroud)
我无法完成声明.请帮助.
您需要将lambda编译为有效的C#:
DataTableA.AsEnumerable().ToList().ForEach(
x=>
{
x.SetField<string>("Name","Jon Skeet");
x.SetField<string>("msg","welcome");
});
Run Code Online (Sandbox Code Playgroud)
话虽如此,我谨慎对待此事.使用ForEach是故意造成副作用的,它实际上并不比语言本身的foreach语句更简洁.就个人而言,我只想写:
foreach(var element in DataTableA.AsEnumerable())
{
element.SetField<string>("Name","Jon Skeet");
element.SetField<string>("msg","welcome");
}
Run Code Online (Sandbox Code Playgroud)
在我看来,这比第一个语句要清晰得多(更简单,更有效,因为它不会强制列表中的完整枚举,以及列表元素的第二个枚举).
| 归档时间: |
|
| 查看次数: |
686 次 |
| 最近记录: |