Как получить поиск для записи int, работающей в MVC EF? - PullRequest
0 голосов
/ 10 апреля 2019

Я пытаюсь найти 4-значный почтовый номер в MVC, и код, который у меня есть, не работает, что мешает ему работать?

До сих пор я пробовал много разных решений в Интернете, но ни одно из них не было успешным. Даже при попытке преобразовать его в строку, которая только создала большую ошибку, поэтому я честно отказываюсь от этого.

public ActionResult Index(int search)
        {
            var storingen = from s in db.tbl_Storing
                            select s;
            if (search != null)
            {
                storingen = storingen.Where(s => s.postcode_nr == (search));
            }
            return View(storingen.ToList());
        }

Это от моего контроллера, это от моего реального взгляда:

Zoek op postcode: @Html.TextBox("search")
    <input type="submit" value="Search" />

Теперь, когда я на самом деле заполняю одно из двух имеющихся в настоящее время чисел и нажимаю кнопку поиска, ничего не происходит, нет ошибок, ничего.

1 Ответ

1 голос
/ 10 апреля 2019

Вы можете изменить значение с int на int? и проверить, что поиск недействителен в вашем контроллере.

Если пользователь вводит текст наподобие abc, параметр поиска будет передавать ноль в контроллер.

[HttpGet]
public ActionResult Index(int? search)
        {
            // check search null before query

            var storingen = from s in db.tbl_Storing
                            select s;
            if (search != null)
            {
                storingen = storingen.Where(s => s.postcode_nr == (search));
            }
            return View(storingen.ToList());
}

И это пример для cshtml

 <form action="/YourController/Index" method="get">
        Zoek op postcode: @Html.TextBox("search")
        <input type="submit" value="Search" />
    </form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...