在我的控制器中,我必須根據用戶傳遞的指定查詢字符串來測試條件。
這些是我目前正在測試的條件:動態linq查詢由於asp.net mvc中的查詢字符串c#
string dep = Request.QueryString["dep"];
string cat = Request.QueryString["cat"];
string brand = Request.QueryString["brand"];
string search = Request.QueryString["search"];
if(!string.IsNullOrEmpty(dep) && !string.IsNullOrEmpty(search))
//does the GetDepSearch() method
}
if(!string.IsNullOrEmpty(dep) && !string.IsNullOrEmpty(brand)){
//does the GetDepBrand() method
}
if(!string.IsNullOrEmpty(cat) && !string.IsNullOrEmpty(search)){
//does the GetCatSearch() method
}
if(!string.IsNullOrEmpty(cat) && !string.IsNullOrEmpty(brand)){
//does the GetCatBrand() method
}
if(!string.IsNullOrEmpty(dep) && !string.IsNullOrEmpty(cat) &&
!string.IsNullOrEmpty(search)){
//does the GetDepCatSearch() method
}
if(!string.IsNullOrEmpty(dep) && !string.IsNullOrEmpty(cat) &&
!string.IsNullOrEmpty(brand)){
//does the GetDepCatBrand() method
}
if(!string.IsNullOrEmpty(dep) && !string.IsNullOrEmpty(cat) &&
!string.IsNullOrEmpty(brand) && !string.IsNullOrEmpty(search)){
//does the GetDepCatBrandSearch() method
}
if(!string.IsNullOrEmpty(search) && !string.IsNullOrEmpty(brand)){
//does the GetSearchBrand() method
}
if(!string.IsNullOrEmpty(dep) && !string.IsNullOrEmpty(search) &&
!string.IsNullOrEmpty(brand)){
//does the GetDepSearchBrand() method
}
if(!string.IsNullOrEmpty(cat) && !string.IsNullOrEmpty(search) &&
!string.IsNullOrEmpty(brand)){
//does the GetCatSearchBrand() method
}
我知道這是很難做到這樣。我想要的是通過使用任何方法來獲得結果,我查詢模型中的數據與基於控制器中指定查詢字符串的條件相匹配。
我必須用Dynamic LinQ或其他任何東西來替代它嗎?我真的不知道關於Dynamic LinQ。
歡迎所有的答案,並表示感謝。
感謝吉姆。正如我在鏈接中看到的,我不知道如何在控制器中調用該方法。你可以給我解釋一下嗎? – titi 2012-02-13 02:56:23