Жанры книг
Мы в соц.сетях
ParaKnig📚 » Компьютеры и Интернет » Базы данных » Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю
<< На главную

Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

Читать онлайн Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 625 626 627 628 629 630 631 632 633 ... 642
Перейти на страницу:

  &lt;tbody&gt;

    @foreach (var item in Model)

    {

      &lt;tr&gt;

        @if (showMake)

        {

          &lt;td&gt;

            @Html.DisplayFor(modelItem =&gt; item.MakeNavigation.Name)

          &lt;/td&gt;

        }

        &lt;td&gt;

          @Html.DisplayFor(modelItem =&gt; item.Color)

        &lt;/td&gt;

        &lt;td&gt;

          @Html.DisplayFor(modelItem =&gt; item.PetName)

        &lt;/td&gt;

        &lt;td&gt;

          &lt;item-edit item-id=&quot;@item.Id&quot;&gt;&lt;/item-edit&gt; |

          &lt;item-details item-id=&quot;@item.Id&quot;&gt;&lt;/item-details&gt; |

          &lt;item-delete item-id=&quot;@item.Id&quot;&gt;&lt;/item-delete&gt;

        &lt;/td&gt;

      &lt;/tr&gt;

    }

    &lt;/tbody&gt;

&lt;/table&gt;

Представление Index

При наличии частичного представления _CarListPartial представление Index будет небольшим. Создайте в каталоге ViewsCars новый файл представления по имени Index.cshtml. Удалите весь сгенерированный код и добавьте следующую разметку:

@model IEnumerable&lt;Car&gt;

@{

  ViewData[&quot;Title&quot;] = &quot;Index&quot;;

}

&lt;h1&gt;Vehicle Inventory&lt;/h1&gt;

&lt;partial name=&quot;Partials/_CarListPartial&quot; model=&quot;@Model&quot;/&gt;

Частичное представление _CarListPartial вызывается со значением модели содержащего представления (IEnumerable&lt;Car&gt;), которое передается с помощью атрибута model. В итоге модель частичного представления устанавливается в объект, переданный вспомогательной функции дескриптора &lt;partial&gt;.

Чтобы взглянуть на представление Index, модифицируйте метод Index() класса CarsController, как показано ниже:

[Route(&quot;/[controller]&quot;)]

[Route(&quot;/[controller]/[action]&quot;)]

(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-390', c: 4, b: 390})

public IActionResult Index()

  =&gt; View(_repo.GetAllIgnoreQueryFilters());

Запустив приложение и перейдя по ссылке https://localhost:5001/Cars/Index, вы увидите список автомобилей (рис. 31.4).

В правой части списка отображаются специальные вспомогательные функции дескрипторов.

Представление ВуMake

Представление ВуMake похоже на Index, но настраивает частичное представление так, что информация о производителе отображается только в заголовке страницы. Создайте в каталоге ViewsCars новый файл представления по имени ВуMake.cshtml. Удалите весь сгенерированный код и добавьте следующую разметку:

@model IEnumerable&lt;Car&gt;

@{

    ViewData[&quot;Title&quot;] = &quot;Index&quot;;

}

&lt;h1&gt;Vehicle Inventory for @ViewBag.MakeName&lt;/h1&gt;

@{

    var mode = new ViewDataDictionary(ViewData) {{&quot;ByMake&quot;, true}};

}

&lt;partial name=&quot;Partials/_CarListPartial&quot; model=&quot;Model&quot; view-data=&quot;@mode&quot;/&gt;

Отличия заметить легко. Здесь создается экземпляр ViewDataDictionary, содержащий свойство ByMake из ViewBag, который затем вместе с моделью передается частичному представлению, что позволяет скрыть информацию о производителе. Метод действия для этого представления должен получить все автомобили с указанным значением MakeId и установить ViewBag в MakeName с целью отображения в пользовательском интерфейсе. Оба значения берутся из маршрута. Добавьте в класс CarsController новый метод действия по имени ByMake():

[HttpGet(&quot;/[controller]/[action]/{makeId}/{makeName}&quot;)]

public IActionResult ByMake(int makeId, string makeName)

{

  ViewBag.MakeName = makeName;

  return View(_repo.GetAllBy(makeId));

}

Запустив приложение и перейдя по ссылке https://localhost:5001/Cars/l/VW, вы увидите список, показанный на рис. 31.5.

Представление Details

Создайте в каталоге ViewsCars новый файл представления по имени Details.cshtml. Удалите весь сгенерированный код и добавьте следующую разметку:

1 ... 625 626 627 628 629 630 631 632 633 ... 642
Перейти на страницу:
На этой странице вы можете бесплатно читать книгу Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю бесплатно.
Комментарии
Открыть боковую панель
Комментарии
Лариса
Лариса 11.03.2026 - 20:17
Странно,здесь имя девочки Аграфена,а на других сайтах я прослушала три книги этого цикла с именем Дарвина.Зачем менять имя и путать читателей? Опечатка- не Дарвина,  а  Дарина.
Григорий
Григорий 09.04.2025 - 22:24
Лучшая книга всех времен
Женя
Женя 02.04.2025 - 16:08
Любимая книга