В настоящее время мой запрос LINQ в моем списке не возвращает результаты поиска. Я пытаюсь передать методу строку, в которой он просматривает все поля FirstName, LastName, and Username
объектов. Вот мой метод:
public IEnumerable<Volunteer> Search(string key)
{
IEnumerable<Volunteer> searchResults = _volunteerList.Where(v => v.FirstName == key
|| v.LastName == key
|| v.Username == key);
return searchResults;
}
Я проверил, что строка key
передается в метод и содержит правильное значение «Bob».
вот список объектов в моем _volunteerList
:
new Volunteer {id = 1, FirstName = "Bob", LastName = "Evans", Username = "BEvans", Password= "1991", StreetAddress = "1995 StreetName Ave", State = "FL", City = "Jacksonville", ZipCode = 32225, ApprovalStatus = "Approved"},
new Volunteer {id = 2, FirstName = "Jim", LastName = "Evans", Username = "JEvans", Password= "1992", StreetAddress = "1995 StreetName Ave", State = "FL", City = "Jacksonville", ZipCode = 32225, ApprovalStatus = "Approved"}
Для меня из всего, что я искал, синтаксис оператора LINQ выглядит правильным и не возвращает никаких ошибок (по крайней мере, в VS19). Есть ли в этом что-то, чего мне не хватает?
Заранее спасибо.
FYI : Соответствующие методы / код:
Homecontroller - Поиск ()
[HttpGet]
public ActionResult Search(string key)
{
IEnumerable<Volunteer> results = _volunteerRepository.Search(key);
ViewData.Model = results;
return View("SearchResults");
}
Управление волонтерами (Просмотр) - Форма
<form method="get" asp-action="Search" >
<table>
<tr>
<td><input type="text" placeholder="Search" name="Key" value ="Bob" class="form-control"/> </td>
<td><input type="submit" value="Search" class="btn btn-primary"></td>
</tr>
</table>
</form>