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

на главную - закладки

Жанры

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

<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.

< image l:href="#"/>

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

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

<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="#" />

</environment>

<environment exclude="Development">

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

</environment>

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

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

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

Теперь модифицируйте частичное представление

_JavaScriptFiles.cshtml
, как показано ниже (обратите внимание, что файлы в разделе
Development
больше не имеют
расширения
.min
):

<environment include="Development">

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

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

</environment>

<environment exclude="Development">

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

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

</environment>

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

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

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

<link>
) имеет атрибуты, применяемые с локальными и удаленными файлами. Атрибут
asp-append-version
, используемый с локальными файлами, добавляет хеш-значение для файла как параметр строки запроса в URL, который отправляется браузеру. При изменении файла изменяется и хеш-значение, обновляя посылаемый браузеру URL. Поскольку ссылка изменилась, браузер очищает кеш от этого файла и перезагружает его. Модифицируйте дескрипторы ссылок для
bootstrap.css
и
site.css
в файле
_Head.cshtml
следующим образом:

<environment include="Development">

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

asp-append-
version="true"/>

</environment>

<environment exclude="Development">

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

</environment>

<link rel="stylesheet" href="#" asp-append-version="true"/>

Ссылка, отправляемая браузеру для файла

site.css
, теперь выглядит так (ваше хеш-значение будет другим):

<link href="#"

rel="stylesheet">

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

<environment exclude="Development">
в файле
_Head.cshtml
, как показано ниже:

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

Кодекс Крови. Книга III

Борзых М.
3. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга III

Идеальный мир для Лекаря 21

Сапфир Олег
21. Лекарь
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 21

Неудержимый. Книга VIII

Боярский Андрей
8. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
6.00
рейтинг книги
Неудержимый. Книга VIII

Бальмануг. Студентка

Лашина Полина
2. Мир Десяти
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Бальмануг. Студентка

Энфис 2

Кронос Александр
2. Эрра
Фантастика:
героическая фантастика
рпг
аниме
5.00
рейтинг книги
Энфис 2

Мастер Разума VII

Кронос Александр
7. Мастер Разума
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Мастер Разума VII

Попаданка

Ахминеева Нина
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Попаданка

Опер. Девочка на спор

Бигси Анна
5. Опасная работа
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Опер. Девочка на спор

Возвращение

Кораблев Родион
5. Другая сторона
Фантастика:
боевая фантастика
6.23
рейтинг книги
Возвращение

Волк 4: Лихие 90-е

Киров Никита
4. Волков
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Волк 4: Лихие 90-е

Бальмануг. (Не) Любовница 2

Лашина Полина
4. Мир Десяти
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Бальмануг. (Не) Любовница 2

Невеста вне отбора

Самсонова Наталья
Любовные романы:
любовно-фантастические романы
7.33
рейтинг книги
Невеста вне отбора

Большая игра

Ланцов Михаил Алексеевич
4. Иван Московский
Фантастика:
альтернативная история
5.00
рейтинг книги
Большая игра

Идеальный мир для Лекаря 17

Сапфир Олег
17. Лекарь
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 17