我想從衆多下拉列表中獲取值,並根據所選選項構建一個where語句。如果他們沒有被選中,那麼他們應該被排除在選擇陳述之外。ASP.NET C#LINQ條件WHERE子句
這是我如何做到這一點,但我認爲它不能用linq這樣完成。
IEnumerable<IGrouping<string, Forest>> treeQuery =
from trees in Forest
if (ddlType1.SelectedValue!=null)
{
string strWhere += trees.Type1 == ddlType1.SelectedValue
}
else if (ddlType2.SelectedValue!=null)
{
string strWhere += trees.Type2 == ddlType2.SelectedValue
}
where strWhere
orderby trees.Nuts
group trees by trees.TrunkColour;
任何幫助將不勝感激。
這是之前我加入...
IEnumerable<IGrouping<string, Forest>> treeQuery =
from trees in Forest
where trees.Type1 == "oak"
orderby trees.Nuts
group trees by trees.TrunkColour;
你的第二個例子是在進行賦值,我想你想測試相等,即你有'='當我認爲你的意思是== == –
謝謝,剛剛更正。 – user1024416
如果用戶從ddlType1中選擇了一個值並且ddlType2應該根據您的示例忽略ddlType2? –