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

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 615 616 617 618 619 620 621 622 623 ... 642

  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 (выделены полужирным):

<b>&lt;div asp-validation-summary=&quot;All&quot; class=&quot;text-danger&quot;&gt;&lt;/div&gt;</b>

&lt;div class=&quot;form-group&quot;&gt;

  &lt;label asp-for=&quot;PetName&quot; class=&quot;col-form-label&quot;&gt;&lt;/label&gt;

  &lt;input asp-for=&quot;PetName&quot; class=&quot;form-control&quot; /&gt;

<b>  &lt;span asp-validation-for=&quot;PetName&quot; class=&quot;text-danger&quot;&gt;&lt;/span&gt;</b>

&lt;/div&gt;

&lt;div class=&quot;form-group&quot;&gt;

  &lt;label asp-for=&quot;MakeId&quot; class=&quot;col-form-label&quot;&gt;&lt;/label&gt;

  &lt;select asp-for=&quot;MakeId&quot; class=&quot;form-control&quot; asp-items=&quot;ViewBag.MakeId&quot;&gt;&lt;/select&gt;

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

&lt;/div&gt;

&lt;div class=&quot;form-group&quot;&gt;

  &lt;label asp-for=&quot;Color&quot; class=&quot;col-form-label&quot;&gt;&lt;/label&gt;

  &lt;input asp-for=&quot;Color&quot; class=&quot;form-control&quot;/&gt;

<b>  &lt;span asp-validation-for=&quot;Color&quot; class=&quot;text-danger&quot;&gt;&lt;/span&gt;</b>

&lt;/div&gt;

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

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

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

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

&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot; /&gt;

&lt;title&gt;@ViewData[&quot;Title&quot;] - AutoLot.Mvc&lt;/title&gt;

<b>&lt;environment include=&quot;Development&quot;&gt;</b>

  &lt;link rel=&quot;stylesheet&quot; href=&quot;~/lib/bootstrap/dist/css/bootstrap.css&quot; /&gt;

<b>&lt;/environment&gt;</b>

<b>&lt;environment exclude=&quot;Development&quot;&gt;</b>

  &lt;link rel=&quot;stylesheet&quot; href=&quot;~/lib/bootstrap/dist/css/bootstrap.min.css&quot; /&gt;

<b>&lt;/environment&gt;</b>

&lt;link rel=&quot;stylesheet&quot; href=&quot;~/css/site.css&quot; /&gt;

В первой вспомогательной функции дескриптора для среды применяется атрибут include=&quot;Development&quot;, чтобы включить содержащиеся файлы, когда среда установлена в Development. В таком случае загружается неминифицированная версия Bootstrap. Во второй вспомогательной функции дескриптора для среды используется атрибут exclude=&quot;Development&quot;, чтобы задействовать содержащиеся файлы, когда среда отличается от Development. В таком случае загружается минифицированная версия Bootstrap. Файл site.css остается тем же самым в среде Development и других средах, поэтому он загружается за пределами вспомогательной функции дескриптора для среды.

1 ... 615 616 617 618 619 620 621 622 623 ... 642
На этой странице вы можете бесплатно читать книгу Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю бесплатно.
Похожие на Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю книги

Оставить комментарий