EF4 code-first vs model-first относительно проверки модели

Я работаю над проектом ASP.NET MVC 3, созданным одним человеком (у меня есть полный контроль над схемой и кодом базы данных), и я пытаюсь выбрать между использованием базы данных и POCO с моей Модели EF4, или если мне лучше пойти с кодом сначала.

Главное, что я ' m пытается добиться, это украсить мои модели атрибутами DataAnnotation, чтобы я мог принудительно выполнить проверку схемы перед выполнением какого-либо сохранения. Глядя на статью Скотта Гатри о проверке модели с использованием MVC 2, он рассказывает о статье о том, как сделать это с помощью кода (шаг 2) и сделать это с помощью модели сначала (или базы данных), используя " приятельские классы »(Шаг 5).

Исторически я проектировал свою базу данных с помощью графического интерфейса дизайнера SQL Server (и скриптов), так что я определенно более продуктивен с этим, особенно когда дело касается дизайна базы данных. Однако, если я не откажусь от идеи украшать свои модели атрибутами DataAnnotation для проверки, я нарушу DRY, не только имея свойства модели в двух классах, но и вынужден, по сути, строить мою схему в двух местах.

Я' Я ищу тех, кто имел опыт работы с обоими методами (или даже с одним методом) и мог бы поделиться своим мнением о том, каким путем они пошли, почему они так решили и как они обнаружили, что это работает. Я также хотел бы знать, не лучше ли мне пойти по-другому, используя такие инструменты, как Fluent Validation, или, может быть, даже полностью отказаться от проверки на уровне модели предметной области и сохранить свою проверку в моделях служб и представлений.

6
задан рüффп 5 November 2013 в 22:30
поделиться