好吧,就我个人而言,无论如何我都不会那样编写代码-但是您可以只使用语句 lambda:
语句 lambda 类似于表达式 lambda,只是语句用大括号括起来
语句体 lambda 可以由任意数量的语句组成;然而,在实践中,通常不超过两个或三个。
所以ForEach
调用看起来像这样:
.ForEach(x => {
x.BtnColor = Color.Red.ToString();
x.OtherColor = Color.Blue.ToString();
});
不过,我会写一个foreach
循环:
var itemsToChange = objFreecusatomization.AllCustomizationButtonList
.Where(p => p.CategoryID == btnObj.CategoryID
&& p.IsSelected
&& p.ID == btnObj.ID);
foreach (var item in itemsToChange)
{
item.BtnColor = Color.Red.ToString();
item.OtherColor = Color.Blue.ToString();
}
(您可以将查询内联到foreach
语句本身,但我个人发现上述方法使用单独的局部变量更清晰。)