Фильтрация .ToList () - PullRequest
       11

Фильтрация .ToList ()

0 голосов
/ 26 сентября 2018

Я новичок в ASP.NET MVC.Что у меня есть: - база данных с одной таблицей, которая содержит производственные данные в следующих столбцах: machine_name, good_parts, bad_parts, date.

На основе учебника по MS для ASP.NEt MVC5 у меня есть простое приложение для отображения данных из базы данных,

Что я хочу: я хочу отфильтровать результаты по имени машины, потому что в БД слишком много записей, и браузер зависает при рендеринге результатов.

Контроллер выглядит так:

public ActionResult Index()
        {
           return View(db.DATABASE.ToList());

        }

Просмотр страницы:

<table class="table">
    <tr>
        <th>
            @Html.DisplayNameFor(model => model.machine_name)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.date)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.good_parts)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.bad_parts)
        </th>
    </tr>

@foreach (var item in Model)
{
    if (item.machine_name == "machine_1")
    {
      <tr>
        <td>
            @Html.DisplayFor(modelItem => item.machine_name)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.data)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.good_parts)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.bad_parts)
        </td>
      </tr> 
     }
}

После реализации оператора if представление не возвращает никаких записей из БД.Заранее большое спасибо за то, что объяснили мне основы.

Марцин.

Ответы [ 2 ]

0 голосов
/ 26 сентября 2018

Вы можете попробовать это:

db.DATABASE.Where(item=>item.machine_name =="machine1").ToList();
0 голосов
/ 26 сентября 2018

Это так же просто, как

db.DATABASE.Where(x => x.MachineName == "something").ToList()

или

db.DATABASE.Take(100).ToList()

Enumerable.Where Method

Запрашиваемый.Где Метод

Фильтрует последовательность значений на основе предиката.

Метод Enumerable.Take (IEnumerable, Int32)

Метод QueryableExtensions.Take (IQueryable, Expression>)

Возвращает указанное количество смежных элементов от начала последовательности

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...