валидация asp net mvc и ViewModel - PullRequest
2 голосов
/ 04 февраля 2011

У меня есть четырехслойное решение для проекта среднего размера:

  1. Модель (объекты EF POCO)
  2. Данные (EF ObjectContext)
  3. Услуги
  4. asp net MVC вопрос

    a) Должен ли я иметь атрибуты проверки - Dataanotation в моделях или проекте MVC?

    б) где я должен установить ViewModel-s, если в MVC тогда где мне заполнить ViewModels данными, в Controller? иначе, если по другому проекту стоит создать репозиторий для VewModel?

    c) должна ли ViewModel иметь проверку>?

Ответы [ 3 ]

2 голосов
/ 04 февраля 2011

A, C) Если у вас есть модели представлений, которые отличаются от ваших DTO, вы можете использовать DataAnnotations в обоих типах.Таким образом, вы можете проверить, прежде чем пытаться сохранить и снова, если вы сохраняете в случае, если ваши DTO используются за пределами вашего приложения MVC.Приложение MVC и мои DTO в проект данных, который отделен от моего приложения MVC.Я использую AutoMapper ЛОТ для копирования значений между моими моделями представлений и моими DTO.

0 голосов
/ 03 апреля 2017

Я действительно предпочитаю создать две модели внутри моделей:

Одна предназначена для класса модели базы данных, а другая - для моделей представления.

Вы также можете добавить все типы проверки в базу данныхмодель класса.

0 голосов
/ 04 февраля 2011

Это нормально для проверки на моделях и моделях представления.Это то, что вам больше нравится, но лучше иметь проверку на ViewModels (вам не нужно использовать привязку и т. Д.), Но больше работы с созданием множества ViewModels, когда тоже можно использовать Модели.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...