使用Linq搜索查询||
我让它工作好了:使用Linq搜索查询||,linq,asp.net-mvc-4,Linq,Asp.net Mvc 4,我让它工作好了: var results = db.GetProducts().Where(p => p.ProductName.Equals(searchQuery, StringComparison.OrdinalIgnoreCase)); 当我使用| |比较将我的新查询设置为: var results = db.GetProducts().Where(p => p.ProductName.Equals(searchQuery, StringComparison.Ordinal
var results = db.GetProducts().Where(p => p.ProductName.Equals(searchQuery, StringComparison.OrdinalIgnoreCase));
当我使用| |比较将我的新查询设置为:
var results = db.GetProducts().Where(p => p.ProductName.Equals(searchQuery, StringComparison.OrdinalIgnoreCase)) || db.GetProducts().Where(p => p.ProductId.ToString().Equals(searchQuery, StringComparison.OrdinalIgnoreCase));
我的结局是:
Error 1 Operator '||' cannot be applied to operands of type
'System.Collections.Generic.IEnumerable<Uppgift_1.Models.MyProduct>' and
'System.Collections.Generic.IEnumerable<Uppgift_1.Models.MyProduct>' C:\Home\Programming
\cSharp\projects\MVC_projects\Uppgift_1\Uppgift_1\Controllers\ProductController.cs
23 27 Uppgift_1
错误1运算符“| |”不能应用于类型为的操作数
“System.Collections.Generic.IEnumerable”和
'System.Collections.Generic.IEnumerable'C:\Home\Programming
\cSharp\projects\MVC\u projects\Uppgift\u 1\Uppgift\u 1\Controllers\ProductController.cs
23.27.1
如果要在搜索查询中同时包含这两个语句,该怎么办?您需要将这两个条件放在相同的
中,其中
var results = db.GetProducts()
.Where(p => p.ProductName
.Equals(searchQuery,
StringComparison.OrdinalIgnoreCase) ||
p.ProductId.ToString()
.Equals(searchQuery,
StringComparison.OrdinalIgnoreCase));
试试这个:
var results = db.GetProducts()
.Where(p => p.ProductName.Equals(searchQuery, StringComparison.OrdinalIgnoreCase)
|| p.ProductId.ToString().Equals(searchQuery, StringComparison.OrdinalIgnoreCase));
只需读取错误文本。将| |应用于两个序列。