搜索功能无法按名字和姓氏找到用户

search function can not find user by name and surname

当我按名字和姓氏搜索用户时,例如 John Doe,我找不到该用户。甚至在数据库中也有一个使用该名字和姓氏的用户。但是,当我只搜索 NAME 或 Surname 时,我会找到用户。我该如何解决这个问题?

public List<User> SearchByName(string search)
{
    return _dBcontext.Users.Where(x => x.Name.Contains(search) || x.Surname.Contains(search)).ToList();
}

在搜索“John Doe”时,您的查询将搜索名称或姓氏包含完整“John Doe”的记录,例如"John".Contains("John Doe")。有几种方法可以解决这个问题,我能想到的最简单的两种是:

  1. 将您的 search 输入拆分为 firstNamesurname 变量,并将这些变量与其各自的记录变量进行比较,
  2. 使用search.Contains(x.Name) || search.Contains(x.Surname)