Поисковый запрос с использованием LINQ - PullRequest
1 голос
/ 26 мая 2020

Я новичок в LINQ и пытаюсь найти результат по имени события или дате события в ASP. NET MVC Application.

Ниже мой код:

public ActionResult search(string name, string date)
{
    Database1Entities db = new Database1Entities();

    List<Event> e = db.Events.Where(x => x.EventName.Contains(name) || x.Date.Contains(date)).ToList();

    return View(e);
}

Мой файл search.cs html в основном имеет два поля ввода для имени события (это первое поле) и даты события (второе поле), а также кнопку отправки.

Когда я ищу с частью определенной даты события, он возвращает правильный результат. Однако он возвращает случайные результаты, не содержащие конкретной строки поиска.

Я также пробовал следующий код:

List<Event> e = db.Events.Where(x => x.EventName == name || x.Date == date).ToList(); 

И в этом случае события со строкой поиска не дали результата. Может ли кто-нибудь помочь мне понять, как заставить этот поиск работать?

1 Ответ

1 голос
/ 26 мая 2020

Когда я ищу с частью определенной даты события, он возвращает правильный результат. Однако он возвращает случайные результаты, не содержащие конкретной строки поиска.

Итак, вы хотите, чтобы результат соответствовал дате И строке поиска? Затем вы должны использовать оператор AND (&& вместо ||) следующим образом:

List<Event> e = db.Events.Where(x => x.EventName.Contains(name) && x.Date.Contains(date)).ToList();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...