Показать сообщение, которое не учитывает результатов поиска?

Я пытаюсь изменить свой поиск на контроллере, чтобы он мог подсчитать количество совпадающих результатов, набранных пользователем в строке поиска. Чтобы пользователь мог искать название фильма, и был найден 1 соответствующий фильм, сообщение было бы скажите "1 фильм соответствует вашим критериям поиска:" терминатор "".

Пока это мой код, у меня нет ошибок, и он хорошо просматривает данные, но не учитывает количество результатов. Если кто-то знает, что мне нужно сделать, чтобы поиск отображал сообщение, это было бы очень полезно. Средство поиска работает, но мне нужно подсчитать, сколько совпадений с данными, и отобразить сообщение, если результатов нет, если таковые имеются и сколько.

Спасибо

public ViewResult Index(string sortOrder, string searchString)
    {
        ViewBag.NamesSortParm = string.IsNullOrEmpty(sortOrder) ? "Name desc" : "";
        ViewBag.MoviesSortParm = sortOrder == "MovieID" ? "Name" : "Director";
        var Movies = from s in MoviesRepository.GetMovies ()
                    select s;
        if (!string.IsNullOrEmpty(searchString))
        {
            Movies = Movies.Where(s => s.Name.ToUpper().Contains(searchString.ToUpper())
                                   || s.Director.ToUpper().Contains(searchString.ToUpper()));
        int count = Movies.Count();
        if (count == 0)
        {
            ViewBag.Message = "No matches found";
        }
        else
        {
            ViewBag.Message = " Results";
        }  }
        switch (sortOrder)
        {
            case "Name":
                Movies = Shows.OrderByDescending(s => s.Name);
                break;
            case "Director":
                Movies = Movies.OrderByDescending(s => s.Director);
                break;
            default:
                Movies = Movies.OrderBy(s => s.Synopsis);
                break;
        }






        return View(Movies.ToList());





    }

1 ответ

Решение

Похоже на опечатку для меня. Заменить эту строку:

ViewBag.Message = " Results";

с этим:

ViewBag.Message = count + " Results";

Кроме того, обязательно поместите ViewBag.Message в View:

<div> @ViewBag.Message </div>
Другие вопросы по тегам