跨多个列的搜索功能

本文关键字:搜索 功能 | 更新日期: 2023-09-27 17:57:08

我需要搜索我正在构建的新网站。我需要搜索的一些列是 int,有些是字符串。

public ActionResult Index(string id)
{
    if (!String.IsNullOrEmpty(id))
    {
        var results = db.Properties.Where(x => x.Address.Contains(id)
            || x.Address2.Contains(id)
            || x.City.Contains(id)
            || x.Description.Contains(id)
            || x.GrossLeasableArea.Contains(id) <-- this is an int
            ...
那么,对

不同类型的列进行两次单独的搜索,然后联接结果会更好吗?还是有其他方法可以满足这种需求?

跨多个列的搜索功能

我想主要问题是,值应该如何与数字列匹配? 例如,如果列具有"123"并且"2"应该匹配它,那么您实质上将该列视为字符串而不是数字。

在这种情况下,只需将其视为字符串:

|| x.GrossLeasableArea.ToString().Contains(id)