我基本上需要根据某些值更改 Gridview 的行颜色。这是我拥有的:
if ((String)DataBinder.Eval(e.Row.DataItem, "STATUS") == "A" || (String)DataBinder.Eval(e.Row.DataItem, "STATUS") == "B" || (String)DataBinder.Eval(e.Row.DataItem, "STATUS") == "C")
{
e.Row.BackColor = Color.Yellow;
}
我正在寻找一种更清晰(或者我应该说更好)的方式,类似于我们在 sql 中使用的方式,而不是必须使用 ||运算符(operator):
IF STATUS in('A','B','C')
使用 LINQ Contains
喜欢:
if(new[] {"A", "B", "C"}
.Contains((String)DataBinder.Eval(e.Row.DataItem, "STATUS")))
如果你想忽略大小写,那么:
if (new[] {"A", "B", "C"}
.Contains((String) DataBinder.Eval(e.Row.DataItem, "STATUS"),
StringComparer.InvariantCultureIgnoreCase))
{
}
我是一名优秀的程序员,十分优秀!