Модель ASP.NET MVC по умолчанию для поста - PullRequest
2 голосов
/ 14 января 2010

У меня есть приложение ASP.NET MVC, где у меня есть интерфейсы для каждой модели представления.

В представлении под названием / Product / Details / 50 я могу редактировать детали для продукта с id = 50.

Я использую строго типизированные представления с типом IProduct. Я использую Замок Виндзор, чтобы сделать DI. Когда я публикую форму редактирования в представлении / Product / Details / 50, экземпляр IProduct по умолчанию будет установлен на метод HttpGet с именем Details (int id) в том же контроллере.

Я думаю, это как-то связано с привязкой моделей. Если я изменю метод HttpPost Details (продукт IProduct) на Details (продукт продукта), он, похоже, будет работать нормально.

Есть идеи?

1 Ответ

2 голосов
/ 14 января 2010

Проблема здесь в том, что когда мы сталкиваемся с IProduct, мы не знаем, какой тип создать. Наши связующие модели не интегрируются с вашим DI-контейнером. По большей части, я согласен с Чарлино, ваши доменные модели, вероятно, должны основываться на интерфейсе, но объекты, которые вы привязываете к моделируемой модели, должны быть тупыми простыми объектами POCO, которые представляют значения, размещенные в форме.

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