Язык программирования 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>
—
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">
© 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
) либо из контроллера в контроллер.
Поделиться:
Популярные книги
Белые погоны
3. Гибрид
Фантастика:
фэнтези
попаданцы
технофэнтези
аниме
5.00
рейтинг книги
Черный дембель. Часть 1
1. Черный дембель
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Лишняя дочь
Любовные романы:
любовно-фантастические романы
8.22
рейтинг книги
Темный Лекарь 5
5. Темный Лекарь
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Последний из рода Демидовых
Фантастика:
детективная фантастика
попаданцы
аниме
5.00
рейтинг книги
Чиновникъ Особых поручений
6. Александр Агренев
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Попаданка в академии драконов 4
4. Попаданка в академии драконов
Любовные романы:
любовно-фантастические романы
7.47
рейтинг книги
Боги, пиво и дурак. Том 6
6. Боги, пиво и дурак
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Курсант: Назад в СССР 10
10. Курсант
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Сделай это со мной снова
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Болотник 2
2. Болотник
Фантастика:
попаданцы
альтернативная история
6.25
рейтинг книги
Камень Книга двенадцатая
12. Камень
Фантастика:
боевая фантастика
городское фэнтези
аниме
фэнтези
5.00
рейтинг книги
Небо для Беса
3. Самбисты
Любовные романы:
современные любовные романы
5.25
рейтинг книги
Надуй щеки! Том 4
4. Чеболь за партой
Фантастика:
попаданцы
уся
дорама
5.00