我需要搜索我正在构建的新网站。我需要搜索的一些列是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
...
那么,对不同类型的列进行两次单独搜索然后加入结果会更好吗?还是有其他方法可以满足这种需求吗?
答案 0 :(得分:1)
我想主要的问题是,值应该如何与数字列匹配?例如,如果列具有“123”并且“2”应该匹配它,那么您基本上将列视为字符串而不是数字。
在这种情况下,只需将其视为字符串:
|| x.GrossLeasableArea.ToString().Contains(id)