如何将下面的Foreach改为LINQ查询?列表showPopup = bizDraftOrder.GetDraftOrders(LocalUser.employee_id);
foreach (var D in showPopup)
{
item1 = new ListItem(D.HALO_LEASE_FLAG);
if (item1.ToString().Contains("Y"))
{
RadWindowManager1.RadAlert("You have exceeded for maximum vehicle count for lease.", 400, 150, "Alert", null, null);
rbtSubmit.Enabled = false;
rbtReset.Enabled = false;
return;
}
}
请告诉我这个怎么重写
1条答案
按热度按时间11dmarpk1#
因为我没有你所有的代码来检查解决方案是否有效。但理论上这应该是你正在寻找的LINQ查询。
"Select"
在“showPopup”上执行,以创建仅包含属性“HALO_LEASE_FLAG”的新对象列表。1.对新列表执行
"FirstOrDefault"
以查找与条件匹配的第一项。1.条件是元素的ToString()方法包含字符串(更精确地说是char)“Y”。
1.如果找到这样的元素,它是
assigned
到变量“item1”,otherwise it remains null
。1.然后检查“item1”是否不为null,如果不为null,将执行代码
这意味着,如果item1为NULL,则未找到任何内容,这是由于
FirstOrDefault
,它将提供第一个项目,如果未找到任何内容,则提供"Default"
,因此NULL