【发布时间】:2023-02-06 20:25:35
【问题描述】:
目前我可以在文本框中输入产品名称并在 SQL Server 数据库中搜索该名称。并且只返回一个唯一的行。这很好用。但是当我搜索例如自行车。我需要退回蓝色自行车和红色自行车。
我目前有:
public List<Product> GetProductByName(string name)
{
List <Product> productList = new List<Product>();
using (var context = _dbContextFactory.CreateDbContext())
{
productList.Add(context.Product.SingleOrDefault(x => x.ProductName == name));
return productList;
}
}
目前我收到一个 System.InvalidOperationException:“序列包含多个元素”。
【问题讨论】:
-
要修复异常并返回具有相同名称的多个产品,您可以使用 Where 方法而不是 SingleOrDefault。
-
太棒了。如果我想返回名称与搜索名称接近的产品,我将如何应用搜索。例如搜索汽车返回 motorCAR 因为它包含关键字?
标签: c# return-value blazor-server-side