如何在此操作中使用if else?

时间:2014-03-14 04:12:27

标签: c# asp.net-mvc if-statement

如果没有结果,如何为此方法编写if / else语句?

public ActionResult Search(string q)
{
    Helpers Helpers = new Helpers();
    var restaurants = Helpers.getRestaurant(q);

    return View("_RestaurantSearchResults", restaurants);
}      

Helpers类包含:

public class Helpers
{
    FoodReviewContext _db = new FoodReviewContext();

    public static IQueryable<Restaurant> getRestaurant(string q)
    {
        var restaurents = _db.Restaurants
                        .Where(r => r.Name.StartsWith(q) || String.IsNullOrEmpty(q))
                        .Take(2);
        return restaurents;
    }
}

3 个答案:

答案 0 :(得分:2)

如果我理解你的问题:

public ActionResult Search(string q)
{
    Helpers Helpers = new Helpers();
    var restaurants = Helpers.getRestaurant(q);
    if (restaurants.Count() == 0) { 
      // do something 
    } else {
      // do something else
    }        

    return View("_RestaurantSearchResults", restaurants);
}  

看看这里:http://msdn.microsoft.com/en-us/library/bb351562%28v=vs.110%29.aspx。这涉及IQueryable<T>接口中的所有方法。

通常,当您在寻找如何使用.NET Framework,C#或其他人的某些部分时,代码,文档是最好的第一个去处。

答案 1 :(得分:0)

试试这个

if (restaurants.Count() != 0)
{
//non-zero thing
}

else
{
//zero thing
}

答案 2 :(得分:0)

只需检查结果计数即可。

 public ActionResult Search(string q)
 {
   Helpers Helpers = new Helpers();
   var restaurants = Helpers.getRestaurant(q);
   if(restaurants.Count()>0)
   {
     return View("_RestaurantSearchResults", restaurants);
   }
  else
  {
    ViewBag.Message="No result found";
    return View("_RestaurantSearchResults");
  }
 }   

只需检查ViewBag.Message是否在View中可用。