我有這樣的控制器:獲取從數據庫中的所有用戶名的列表中MVC 4
public ActionResult NameSearch(SearchModel userSearch)
{
if (ModelState.IsValid)
{
var db = new reviewlogsEntities();
return View(db.logrecords.Where(m => m.username == userSearch.userName).ToList());
}
return RedirectToAction("index", "home");
}
我的問題是,目前正在尋找日誌的用戶正在尋找一個用戶名,一旦他們有一個用戶名,他們可以輸出一個列表。我現在面臨的問題是如果他們沒有輸入用戶名,我的要求是什麼。應該發生什麼事情,所有的用戶和他們的日誌應該出現。我可以只讓if語句說,如果空只是做
return View(db.logrecords.ToList());
我覺得有另一種方式我可以做到這一點,而不必這樣做。因爲我的思維過程是,如果搜索需要更復雜的話。他們可能不會輸入用戶名,但他們可以輸入他們正在尋找的日期,反之亦然。如果沒有它,那麼我就無法真正做到超級混亂。任何幫助真的會很感激!
如果您使用的是實體框架,默認情況下'IQueryable'被懶惰地評估,使它們可組合。因此,您可以使用多個條件語句逐步向查詢引入過濾器。完成後,只需通過調用「ToList」(或枚舉結果並轉換爲模型)來評估查詢並將結果集合返回到視圖。 –