Содержание
- 2. Вводные понятия Понятие контроллера Атрибуты контроллера и действий Передача данных в контроллер Результаты действий Переопределение контроллеров
- 3. Понятие модели Одним из ключевых компонентов паттерна MVC являются модели. Ключевая задача моделей - описание структуры
- 4. Понятие модели Все модели оформляются как обычные классы на языке C#. Например, если мы работаем с
- 5. Понятие модели Модель Phone определяет ряд свойств: уникальный идентификатор Id, название, компанию производителя и цену. Это
- 6. Виды моделей Модели можно разделить по степени применения на несколько групп: Модели, объекты которых хранятся в
- 7. Пример работы с моделью представления Модель представления используется, когда в представление необходимо передать сразу несколько моделей.
- 8. Привязка модели Привязка модели или Model binding представляет механизм сопоставления значений из HTTP-запроса с параметрами метода
- 9. Привязка модели В случае, если параметры метода представляют сложные данные, например, класс, привязчик модели будет действовать
- 10. Привязка модели При этом свойства, к которым осуществляется привязка, должны быть объявлены с модификатором public и
- 11. Управление привязкой Для тех свойств модели, для которых не переданы значения, устанавливаются значения по умолчанию, например,
- 12. BindRequired и BindNever BindRequired требует обязательного наличия значения для свойства модели. BindNever указывает, что свойство модели
- 13. BindRequired и BindNever Если для свойства с атрибутом BindRequired не будет передано значение, то в объект
- 14. BindingBehavior Кроме того, мы можем применять атрибут BindingBehavior, который устанавливает поведение привязки с помощью одно из
- 15. Источники привязки Ранее говорилось про порядок обхода привязчиком модели различных источников для получения значений. Но группа
- 16. Источники привязки Например, получим данные о юзер-агенте из запроса: public IActionResult GetUserAgent([FromHeader(Name="User-Agent")] string userAgent) { return
- 17. Атрибуты валидации С помощью атрибутов валидации модели мы можем управлять валидацией и заключать несложную логику проверки
- 18. Атрибуты валидации 2. Атрибут RegularExpression [RegularExpression(@"[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}", ErrorMessage = "Некорректный адрес")] public string Email { get; set;
- 19. Атрибуты валидации 3. Атрибут StringLength Чтобы пользователь не мог ввести очень длинный текст, применяется атрибут StringLength.
- 20. Атрибуты валидации 4. Атрибут Range Атрибут Range определяет минимальные и максимальные ограничения для числовых данных. [Required]
- 21. Атрибуты валидации 5. Атрибут Compare Атрибут Compare гарантирует, что два свойства объекта модели имеют одно и
- 22. Атрибуты валидации 5. Специальные атрибуты Мы применяли регулярное выражение для проверки адреса электронной почты. Проверки на
- 23. Аннотации данных Кроме атрибутов валидации модели также могут иметь дополнительные атрибуты, которые называются аннотации данных и
- 24. Аннотации данных 2. Исключение из модели Иногда возникают ситуации, когда надо, наоборот, исключить сущность из модели.
- 25. Аннотации данных 3. Сопоставление таблиц Атрибут Table позволяет переопределить сопоставление с таблицей по имени: [Table("People")] public
- 26. Аннотации данных 4. Сопоставление столбцов Атрибут Column переопределяет сопоставление: public class User { [Column("user_id")] public int
- 27. Аннотации данных 5. Настройка ключей и индексов По умолчанию в качестве ключа используется свойство, которое называется
- 28. Аннотации данных 6. Альтернативные ключи Альтернативные ключи представляют свойства, которые также, как и первичный ключ, должны
- 30. Скачать презентацию