【问题标题】:Searching for single value against multiple columns针对多个列搜索单个值
【发布时间】:2014-05-12 10:33:27
【问题描述】:

我想从用户那里发送一个searchString,并想在我的数据库的Order 表的多个列中搜索它。例如,如果用户发送字符串“abc”,那么如果customerEmail 字段包含“abc”或“OrderId”字段包含“abc”或"PostelCode" 字段包含“abc”,我必须在订单表中搜索 然后将返回所有这些累积记录。

 public ActionResult SearchOrders(string searchString)
    {
        var searchedOrders = dbContextObject.Orders.Where( //here comes the actual comparison)
        if (searchedOrders.Count > 0)
        {
            return View("_searchedOrders", searchedOrders); ;
        }
        else
        {
            return Json("No Record found");
        }
    }

【问题讨论】:

    标签: sql asp.net-mvc entity-framework linq-to-entities


    【解决方案1】:

    你试过了吗?

    public ActionResult SearchOrders(string searchString)
    {
        var q = searchString.Trim().ToLower();
    
        var searchedOrders = dbContextObject.Orders.Where( t =>
                               t.CustomerEmail.ToLower().Contains(q) ||
                               t.OrderId.ToLower().Contains(q) ||
                               t.PostelCode.ToLower().Contains(q));
        if (searchedOrders.Count > 0)
        {
            return View("_searchedOrders", searchedOrders);
        }
        else
        {
            return Json("No Record found");
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多