我想使用LINQ返回處於三種狀態之一的任務列表。這些狀態是:C#LINQ語句與OR子句
10 - 完成 11 - 不完全 12 - 跳過
的狀態是可以通過一個名爲 「TaskStateID」 屬性。我可以在LINQ中只有一個國家這樣做如下所示:
var filteredTasks = from task in tasks
select task;
// Do stuff with filtered tasks
string selectedComboBoxValue = GetFilterComboBoxValue();
if (selected ComboBoxValue == 3)
{
filteredTasks = filteredTasks.Where(p => p.TaskStateID == 10); // How do I use an 'OR' here to say p.TaskStateID == 10 OR p.TaskStateID == 11 OR p.TaskStateID == 12
}
如上所示的評論,我怎麼使用的「或」在LINQ聲明說p.TaskStateID == 10或P .TaskStateID == 11或p.TaskStateID == 12?
謝謝
+1可維護性! – 2010-03-13 17:06:00
只要你把lambda操作符放在正確的地方......哦,並且記住這將創建一個閉包。 – 2010-03-13 17:14:40
您也只能使用包含字符串。 – Hemslingo 2016-07-07 09:16:01