Чтение онлайн

на главную

Жанры

Язык программирования C#9 и платформа .NET5
Шрифт:

<meta charset="utf-8" />

<meta name="viewport" content="width=device-width, initial-scale=1.0" />

<title>@ViewData["Title"] - AutoLot.Mvc</title>

<link rel="stylesheet" href="#" />

<link rel="stylesheet" href="#" />

Замените разметку, удаленную из файла

_Layout.cshtml
, вызовом для визуализации нового частичного представления:

<head>

<partial name="Partials/_Head"/>

</head>

Дескриптор

<partial>
это еще один пример вспомогательной функции дескриптора. В атрибуте name указывается имя частичного представления с путем, начинающимся с текущего каталога представления, которым в данном случае является
Views\Shared
.

Частичное представление Menu

Для частичного представления

Menu
вырежьте всю разметку между дескрипторами
<header></header>
(не
<headx/head>
) и вставьте ее в файл
Menu.cshtml
. Модифицируйте файл
Layout.cshtml
, чтобы визуализировать частичное представление
Menu
:

<header>

<partial name="Partials/_Menu"/>

</header>

Частичное представление JavaScriptFiles

Наконец, вырежьте дескрипторы

<script>
для файлов JavaScript и вставьте их в частичное представление
JavaScriptFiles
. Удостоверьтесь в том, что оставили дескриптор
RenderSection
на своем месте. Вот частичное представление
JavaScriptFiles
:

<script src="~/lib/jquery/dist/jquery.min.js"></script>

<script src="~/lib/bootstrap/dist/js/bootstrap.bundle.min.js"></script>

<script src="~/js/site.js" asp-append-version="true"></script>

Ниже приведена текущая разметка в файле

_Layout.cshtml
:

<!DOCTYPE html>

<html lang="en">

<head>

<partial name="Partials/_Head" />

</head>

<body>

<header>

<partial name="Partials/_Menu" />

</header>

<div class="container">

<main role="main" class="pb-3">

@RenderBody

</main>

</div>

<footer class="border-top footer text-muted">

<div class="container">

&copy; 2021 - AutoLot.Mvc - <a asp-area="" asp-controller="Home"

asp-action="Privacy">Privacy</a>

</div>

</footer>

<partial name="Partials/_JavaScriptFiles" />

@await RenderSectionAsync("Scripts", required: false)

</body>

</html>

Отправка

данных представлениям

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

<partial>
).

Строго типизированные представления и модели представлений

При передаче методу

View
модели или модели представления значение присваивается свойству
@model
строго типизированного представления (обратите внимание на букву
m
в нижнем регистре):

@model IEnumerable<Order>

Свойство

@model
устанавливает тип для представления, к которому затем можно получать доступ с использованием Razor-команды
@Model
(обратите внимание на букву
М
в верхнем регистре):

@foreach (var item in Model)

{

// Делать что-то.

}

В методе действия

RazorViewSyntax
демонстрируется представление, получающее данные из этого метода действия:

[HttpGet]

public IActionResult RazorSyntax([FromServices] ICarRepo carRepo)

{

var car = carRepo.Find(1);

return View(car);

}

Значение модели может быть передано и в

<partial>
, как показано ниже:

<partial name="Partials/_CarListPartial" model="@Model"/>

Объекты ViewBag, ViewData и TempData

Объекты

ViewBag
,
ViewData
и
TempData
являются механизмами для отправки представлению данных небольшого объема. В табл. 31.1 описаны три механизма передачи данных из контроллера в представление (помимо свойства
Model
) либо из контроллера в контроллер.

Поделиться:
Популярные книги

На границе империй. Том 4

INDIGO
4. Фортуна дама переменчивая
Фантастика:
космическая фантастика
6.00
рейтинг книги
На границе империй. Том 4

Имя нам Легион. Том 4

Дорничев Дмитрий
4. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 4

Барон устанавливает правила

Ренгач Евгений
6. Закон сильного
Старинная литература:
прочая старинная литература
5.00
рейтинг книги
Барон устанавливает правила

Начальник милиции. Книга 5

Дамиров Рафаэль
5. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 5

Пенсия для морского дьявола

Чиркунов Игорь
1. Первый в касте бездны
Фантастика:
попаданцы
5.29
рейтинг книги
Пенсия для морского дьявола

Низший - Инфериор. Компиляция. Книги 1-19

Михайлов Дем Алексеевич
Фантастика 2023. Компиляция
Фантастика:
боевая фантастика
5.00
рейтинг книги
Низший - Инфериор. Компиляция. Книги 1-19

Мастер 4

Чащин Валерий
4. Мастер
Фантастика:
героическая фантастика
боевая фантастика
попаданцы
5.00
рейтинг книги
Мастер 4

Студиозус

Шмаков Алексей Семенович
3. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
5.00
рейтинг книги
Студиозус

Безумный Макс. Ротмистр Империи

Ланцов Михаил Алексеевич
2. Безумный Макс
Фантастика:
героическая фантастика
альтернативная история
4.67
рейтинг книги
Безумный Макс. Ротмистр Империи

Ветер перемен

Ланцов Михаил Алексеевич
5. Сын Петра
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Ветер перемен

По дороге пряностей

Распопов Дмитрий Викторович
2. Венецианский купец
Фантастика:
фэнтези
героическая фантастика
альтернативная история
5.50
рейтинг книги
По дороге пряностей

Убивать чтобы жить 2

Бор Жорж
2. УЧЖ
Фантастика:
героическая фантастика
боевая фантастика
рпг
5.00
рейтинг книги
Убивать чтобы жить 2

Решала

Иванов Дмитрий
10. Девяностые
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Решала

Повелитель механического легиона. Том I

Лисицин Евгений
1. Повелитель механического легиона
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Повелитель механического легиона. Том I