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

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

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

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

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

<button type="submit" asp-action="Create">Index</button>

Вспомогательная функция дескриптора для якоря

Вспомогательная функция дескриптора для якоря (<а>) заменяет вспомогательную функцию HTML с именем Html.ActionLink(). Скажем, чтобы создать ссылку на представление RazorSyntax, применяйте такой код:

<a class="nav-link text-dark" asp-area="" asp-controller="Home"

    asp-action="RazorSyntax">

  Razor Syntax

</a>

Для добавления страницы синтаксиса Razor в меню модифицируйте _Menu.cshtml, как показано ниже, добавив новый элемент меню между элементами Home (Домой) и Privacy (Секретность) (дескрипторы <li>, окружающие дескрипторы якорей, предназначены для меню Bootstrap):

...

<li class="nav-item">

  <a class="nav-link text-dark" asp-area="" asp-controller="Home"

      asp-action="Index">Home</a>

</li>

<li class="nav-item">

   <a class="nav-link text-dark" asp-area="" asp-controller="Home"

asp-action="RazorSyntax">Razor Syntax</a>

</li>

<li class="nav-item">

   <a class="nav-link text-dark" asp-area="" asp-controller="Home" 

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

</li>

Вспомогательная функция дескриптора для элемента ввода

Вспомогательная функция дескриптора для элемента ввода (<input>) является одной из наиболее универсальных. В дополнение к автоматической генерации атрибутов id и name стандарта HTML, а также любых атрибутов data-val стандарта HTML5, вспомогательная функция дескриптора строит надлежащую HTML-разметку, основываясь на типе данных целевого свойства. В табл. 31.3 перечислены типы HTML, которые создаются на базе типов .NET Core свойств.

Кроме того, вспомогательная функция дескриптора для элемента ввода добавит атрибуты type из HTML5, основываясь на аннотациях данных. В табл. 31.4 перечислены некоторые распространенные аннотации и генерируемые атрибуты type из HTML5.

Шаблон редактирования Car.cshtml содержит дескрипторы <input> для свойств PetName и Color. В качестве напоминания ниже приведены только эти дескрипторы:

<input asp-for="PetName" class="form-control" />

<input asp-for="Color" class="form-control"/>

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

<input class="form-control" type="text" data-val="true"

    data-val-length="The field Pet Name must be a string with a

maximum length of 50." data-val-length-max="50"

   data-val-required="The Pet Name field is required."

   id="PetName" maxlength="50" name="PetName" value="Zippy">

<input class="form-control valid" type="text" data-val="true"

   data-val-length="The field Color must be a string with a

maximum length of 50." data-val-length-max="50"

   data-val-required="The Color field is required."

   id="Color" maxlength="50" name="Color" value="Black"

   aria-describedby="Color-error" aria-invalid="false">

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

Вспомогательная функция дескриптора для текстовой области (<textarea>) автоматически добавляет атрибуты id и name и любые атрибуты проверки достоверности HTML5, определенные для свойства. Например, следующая строка создает дескриптор <textarea> для свойства Description:

<textarea asp-for="Description"></textarea>

Вспомогательная функция дескриптора для элемента выбора

 Вспомогательная функция дескриптора для элемента выбора (<select>) создает дескрипторы ввода с выбором из свойства модели и коллекции. Как и в других вспомогательных функциях дескрипторов для элементов ввода, к разметке автоматически добавляются атрибуты id и name, а также любые атрибуты data-val из HTML5. Если значение свойства модели совпадает с одним из значений в списке, тогда для этого варианта в разметку добавляется атрибут selected.

Например, пусть имеется модель со свойством по имени Country и список SelectList по имени Countries с таким определением:

public List<SelectListItem> Countries { get; } = new List<SelectListItem>

{

  new SelectListItem { Value = "MX", Text = "Mexico" },

  new SelectListItem { Value = "CA", Text = "Canada" },

  new SelectListItem { Value = "US", Text = "USA"  },

};

Следующая разметка будет визуализировать дескриптор <select> с надлежащими дескрипторами <option>:

<select asp-for="Country" asp-items="Model.Countries"></select>

Если значением свойства Country является CA, тогда в представление будет выведена показанная ниже разметка:

<select id="Country" name="Country">

  <option value="MX">Mexico</option>

  <option selected="selected" value="CA">Canada</option>

  <option value="US">USA</option>

</select>

Вспомогательные функции дескрипторов для проверки достоверности

Вспомогательные функции дескрипторов для сообщения проверки достоверности и для сводки по проверке достоверности в точности отражают вспомогательные функции HTML с именами Html.ValidationMessageFor() и Html.ValidationSummaryFor(). Первая применяется к HTML-дескриптору <span> для отдельного свойства модели, а вторая — к HTML-дескриптору <div> для целой модели. Сводка по проверке достоверности поддерживает варианты Аll (все ошибки), ModelOnly (ошибки только модели, но не свойств модели) и None (никаких ошибок).

Вспомните вспомогательные функции дескрипторов для проверки достоверности из EditorTemplate в файле Car.cshtml (выделены полужирным):

<div asp-validation-summary="All" class="text-danger"></div>

<div class="form-group">

  <label asp-for="PetName" class="col-form-label"></label>

  <input asp-for="PetName" class="form-control" />

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

</div>

<div class="form-group">

  <label asp-for="MakeId" class="col-form-label"></label>

  <select asp-for="MakeId" class="form-control" asp-items="ViewBag.MakeId"></select>

</div>

<div class="form-group">

  <label asp-for="Color" class="col-form-label"></label>

  <input asp-for="Color" class="form-control"/>

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

</div>

Эти вспомогательные функции дескрипторов будут отображать ошибки модели, возникшие во время привязки и проверки достоверности, как показано на рис. 31.3.

Вспомогательная функция дескриптора для среды

Вспомогательная функция дескриптора для среды (<environment>) обычно используется для условной загрузки файлов JavaScript и CSS (или подходящей разметки) на основе среды, в которой запущен сайт. Откройте частичное представление _Head.cshtml и модифицируйте разметку следующим образом:

<meta charset="utf-8" />

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

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

<environment include="Development">

  <link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.css" />

</environment>

<environment exclude="Development">

  <link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.min.css" />

</environment>

<link rel="stylesheet" href="~/css/site.css" />

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

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

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


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

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


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

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

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


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