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

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

Читать бесплатно Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю. Жанр: Базы данных год 2004. Так же читаем полные версии (весь текст) онлайн без регистрации и SMS на сайте kniga-online.club или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Перейти на страницу:

    <span asp-validation-for="Color" class="text-danger"></span>

</div>

В шаблоне редактирования задействовано несколько вспомогательных функций дескрипторов (asp-for, asp-items, asp-validation-for и asp-validation-summary), которые рассматриваются позже в главе.

Шаблон редактирования Car вызывается с помощью вспомогательных функций HTML, которые называются EditorFor() и EditorForModel(). Подобно шаблонам отображения упомянутые функции будут искать представление с именем Car.cshtml или с таким же именем, как у метода.

Компоновки

По аналогии с мастер-страницами Web Forms в MVC поддерживаются компоновки, которые совместно используются представлениями, чтобы обеспечить согласованный внешний вид страниц сайта. Перейдите в каталог ViewsShared и откройте файл _Layout.cshtml. Это полноценный HTML-файл с дескрипторами <head> и <body>.

Файл _Layout.cshtml является основой, в которую визуализируются другие представления. Кроме того, поскольку большая часть страницы (такая как разметка для навигации и верхнего и/или нижнего колонтитула) поддерживается страницей компоновки, страницы представлений сохраняются небольшими и простыми. Найдите в файле _Layout.cshtml следующую строку кода Razor:

@RenderBody()

Эта строка указывает странице компоновки, где визуализировать представление. Теперь перейдите к строке, расположенной прямо перед закрывающим дескриптором </body>, которая создает новый раздел для компоновки и объявляет его необязательным:

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

Разделы также могут помечаться как обязательные путем передачи для второго параметра (required) значения true. Вдобавок они могут визуализироваться синхронным образом:

@RenderSection("Header",true)

Любой код и/или разметка в блоке @ section файла представления будет визуализироваться не там, где вызывается @RenderBody(), а в месте определения раздела, присутствующего в компоновке. Например, пусть у вас есть представление со следующей реализацией раздела:

@section Scripts {

  <script src="~/lib/jquery-validation/dist/jquery.validate.js"></script>

}

Код из представления визуализируется в компоновке на месте определения раздела. Если компоновка содержит показанное ниже определение:

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

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

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

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

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

тогда будет добавлен раздел представления, приводя в результате к отправке браузеру следующей разметки:

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

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

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

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

<b>&lt;script src=&quot;~/lib/jquery-validation/dist/jquery.validate.js&quot;&gt;&lt;/script&gt;</b>

В ASP.NET Core появились два новых метода: IgnoreBody() и IgnoreSection(). В случае помещения внутрь компоновки эти методы отменяют визуализацию тела представления или указанного раздела соответственно. Они позволяют включать или отключать функции представления в компоновке на основе условной логики, такой как уровни безопасности.

Указание стандартной компоновки для представлений

Как упоминалось ранее, стандартная страница компоновки определяется в файле _ViewStart.cshtml. Любое представление, где не указана компоновка, будет использовать компоновку, определенную в первом файле _ViewStart.cshtml, который обнаруживается в каталоге представления или выше него в структуре каталогов.

Частичные представления

Частичные представления концептуально похожи на пользовательские элементы управления в Web Forms. Частичные представления удобны для инкапсуляции пользовательского интерфейса, что помогает сократить объем повторяющегося кода и/или разметки. Частичное представление не задействует компоновку и внедряется внутрь другого представления или визуализируется с помощью компонента представления (рассматривается позже в главе).

Обновление компоновки с использованием частичных представлений

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

Создание частичных представлений

Создайте внутри каталога Shared новый каталог подназванием Partials и добавьте в него три пустых представления с именами _Head.cshtml, _JavaScriptFiles.cshtml и _Menu.cshtml.

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

Вырежьте содержимое между дескрипторами &lt;head&gt;&lt;/head&gt; в компоновке и вставьте его в файл _Head.cshtml:

&lt;meta charset=&quot;utf-8&quot; /&gt;

Перейти на страницу:

Троелсен Эндрю читать все книги автора по порядку

Троелсен Эндрю - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки kniga-online.club.


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

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


Уважаемые читатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

  • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
  • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
  • 3. Просьба отказаться от нецензурной лексики.
  • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

Надеемся на Ваше понимание и благоразумие. С уважением, администратор kniga-online.


Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*