【发布时间】:2012-01-05 08:06:54
【问题描述】:
我有一种方法可以在数据库中搜索特定客户。目前只需要 1 个术语,但我希望能够搜索多个术语(例如客户的帐号和他们的姓名)。下面是我的方法:
public List<AXCustomer> allCustomers(string id)
{
string[] searchstring = id.Split(' ');
List<AXCustomer> customer = new List<AXCustomer>();
// if 3 terms are entered
if (searchstring.Length > 2)
{
}
// if 2 terms are entered
else if (searchstring.Length > 1)
{
}
// revert back to default search
else
{
customer = context.AXCustomers.Where(x => x.ACCOUNTNUM.Contains(id) ||
x.NAME.Contains(id) || x.ZIPCODE.Contains(id)).ToList();
}
return customer;
}
如您所见,我决定拆分输入的每个术语(我假设每个术语将用空格分隔),但我不确定我的 LINQ 查询应该如何处理超过一个的术语。任何帮助将不胜感激
【问题讨论】:
-
"帐号及其名称" ...但是如果您有帐号,那么搜索名称有什么意义,
accountId应该已经指向该名称,为什么要写呢?也许您想要按帐号或帐户名称?这就是你想要完成的事情吗?
标签: c# linq asp.net-mvc-3