Мне сложно понять два подхода к дизайну с точки зрения долговременной расширяемости в моем текущем приложении ASP.NET MVC.Преимущества использования FormViewModel в контроллерах по сравнению с классом частичной модели в моделях
ORM, который я использую для предоставления данных, - Linq2SQL
. Который только изумительный для работы с, BTW!
Теперь у меня возникли проблемы с дизайном классов модели для моих просмотров. В настоящее время у меня есть partial class
для каждого объекта в базе данных.
- Такой подход позволяет мне расширить класс без необходимости переключения
strongly typed
модели на моих взглядах - можно легко добавить дополнительные свойства для дополнительных данных (в основном меты)
- можно легко добавить вспомогательные методы, которые заполнить списки для меня и/или делать другие транзакции
- Одна проблемы остается:
- Я не могу создать пользовательский
constructor
, как это уже управляемыйLinq2SQL
- Я не могу создать пользовательский
После прочтения ASP.NET MVC Book и некоторые уроки, я вижу, очень распространенное использование FormViewModels
для предоставления дополнительных данных об объекте.
В настоящее время мне очень нравится дизайн partial class
для моих сущностей. Но я бы не прочь переделать дизайн, поскольку я все еще создаю приложение.
Каковы преимущества FormViewModel
вместо легкого partial class
подхода и каковы лучшие практики в этом вопросе?
Вся помощь более чем ценится!