TL; DR: создание множества моделей просмотра. Они дешевые и гибкие.
«Похоже, это противоречит принципу СУХОЙ и некоторым другим стандартным практикам программирования».
[Требуется цитата]?
MVC не меняет того факта, что на любом языке или шаблоне вам нужно создать определение модели представления для каждого отдельного экрана. Будь то через атрибуты, через XML, через переключение элементов управления веб-формы, что угодно.
Принципал DRY обычно относится к повторяющейся бизнес-логике. Повторение свойства FirstName в разделе экрана CRUD на самом деле не имеет большого значения. Даже 5-6 раз, что это? 40 секунд?
Если вы ошибочно принимаете свои модели представления за объектно-ориентированные классы, а не за гомоконистический экран представления, которые вы рискуете заполнить, будут всевозможными наследованиями или бизнес-логикой.
Вы на самом деле не программируете, когда делаете глупые определения вида. Эту работу можно легко выполнить в графическом интерфейсе Access или определить в XML. Тот факт, что ваши модели представления экрана в C # просто упрощают их заполнение данными и их доставку, а также работу с такими инструментами, как WCF и Automapper.