Различные сценарии проверки модели - PullRequest
0 голосов
/ 02 августа 2011

У меня есть пользовательский объект в моем приложении, где пользователи вводят некоторую основную информацию при регистрации в приложении. Если они хотят использовать некоторые расширенные функции, они должны предоставить полную информацию.

Итак, у меня есть два сценария проверки.

Мой первый подход заключался в обмене атрибута Required с атрибутом MyRequired, чтобы избежать создания столбцов как NOT NULL в базе данных через Entity Framework.

Но модель проверяется, если я добавлю ее в контекст моей БД. Поэтому я не могу добавить объект, если он просто заполнен основной информацией.

Есть ли способ иметь одну сущность с несколькими различными сценариями проверки ?

1 Ответ

3 голосов
/ 02 августа 2011

Есть ли способ проверить модель с разными сценариями?

Это то, что должны делать модели представлений. Я бы порекомендовал вам не передавать ваши модели EF на просмотр. Также избегайте передачи моделей доменов EF своим действиям => всегда используйте модели представлений. Эти классы специально разработаны для удовлетворения требований данного представления, включая атрибуты проверки. Затем сопоставьте ваши модели объектов с вашими моделями представления.

Таким образом, модели вашего домена полностью отделены от способа представления информации в данном представлении. Также (как и в вашем случае) одна и та же модель предметной области может иметь два разных представления в разных представлениях, а также разные требования к проверке, конечно, => модели представлений заполняют этот пробел.

...