Я новичок в архитектуре MVC, и я хочу изучить основы ASP.NET MVC. В статье под названием «Model View Controller, Model View Presenter, and Model View ViewModel Design Patterns« Я узнал несколько хороших моментов о MVC. Я видел в статье, что каждая модель имеет некоторые взгляды в качестве наблюдателей. Поэтому модель использует observer pattern
. Когда некоторое состояние в модели изменяется, все представления уведомляются. Однако, как я знаю, ASP.NET MVC показывает только одно представление за раз. Итак, для меня странно, КАК это относится к Microsoft Asp.NET MVC. Могу ли я сказать, что у модели есть только один наблюдатель (вид) для уведомления в ASP.NET MVC?Понимание архитектуры MVC Asp.net
ответ
AFAIK, в архитектуре MVC, Model - это объект, который будет использоваться для передачи данных между контроллером для просмотра и наоборот.
Следовательно, если модель изменена контроллером, тогда представление, когда оно должно быть передано пользователю, получает данные из модели.
Просмотр изменений в ASP MVC инициируется выполнением определенного контроллера для данного представления.
Каждый вид имеет определенный назначенный ему метод контроллера, поэтому представление может быть представлено как ответ вызова контроллера пользователем.
Например, у вас есть представление, в котором вы показываете сетку строк, извлеченных из базы данных. Нажмите кнопку «Далее» внизу сайта, чтобы перейти на вторую страницу. Что вы в основном делаете, вызывается метод контроллера, который принимает номер страницы в качестве параметра. Этот метод контроллера вызывает базу данных для данных, на основе номера страницы, который вы хотите отобразить, получить эти объекты db (как классы моделей) и передать их для просмотра, чтобы отобразить их.
Просмотр изменений инициируется контроллером. Модель - это ваше представление данных/логики. Это может по классам POCO, ваши алгоритмы, соединения с базами данных и т.д.
Другой пример, который вы вводите в свой адрес браузера:
http://stackoverflow.com/questions/18035611/understanding-asp-net-mvc-architecture
Сделав это и нажав клавишу ENTER, вы сообщаете сайт StackOverflow запустить контроллер с именем «вопросы», и вы передаете ему параметры, которые составляют 18035611 и «понимание-asp-net-mvc-architecture». То, что делает контроллер, - это сбор необходимых данных из базы данных, преобразование их в объекты модели и отправка их для просмотра, чтобы отобразить их в HTML-коде.
Конечно, это только аналогия. Я не уверен, что технология SO использует, но если она использовала ASP MVC, это было бы так, как я описал.
, как я знаю, в архитектуре MVC контроллер будет выбран во время выполнения с использованием шаблона стратегии! –
- 1. Понимание архитектуры MVC как не-MVC-разработчика
- 2. ASP.NET MVC Разработка многоуровневой архитектуры
- 3. Помощь архитектуры ASP.NET MVC/DDD
- 4. ASP.NET MVC с DDD архитектуры
- 5. Понимание архитектуры модуля Magento
- 6. Понимание ASP.NET MVC 5 Маршрутизация
- 7. Понимание Asp.net MVC маршрута конфигурации
- 8. Шаблон ASP.NET MVC & Repository Понимание
- 9. Понимание архитектуры Google V8
- 10. Понимание архитектуры Android-контактов
- 11. Понимание архитектуры Spark SQL
- 12. Основное понимание архитектуры webos
- 13. Проект архитектуры архитектуры доменных имен в ASP.NET MVC
- 14. ASP.NET MVC, плагин архитектуры и ID столкновения
- 15. Проблема абстракции архитектуры в репозитории ASP.NET MVC
- 16. Тестируемые архитектуры ASP.NET
- 17. Понимание лучшей архитектуры Javascript ООП
- 18. ASP.NET, MVC, Entity Framework и понимание моделей
- 19. Понимание asp.net mvc IView и IView.Render
- 20. Понимание маршрутизации в Global.asax (asp.net-mvc)
- 21. Глубокое понимание async/await на ASP.NET MVC
- 22. Вопросы архитектуры MVC
- 23. Правильная реализация архитектуры MVC
- 24. Реализация архитектуры MVC
- 25. Поддержка архитектуры проекта MVC
- 26. Ограничить нарушение архитектуры - asp.net MVP
- 27. ASP.NET Web.Api плагин архитектуры
- 28. Дизайн веб-архитектуры ASP.NET
- 29. ASP.Net Web API архитектуры выбор
- 30. ASP.NET MVC как хост службы для архитектуры SOA
любой человек ???????? –
Это может помочь http://stackoverflow.com/questions/3700568/whos-responsible-for-the-next-view/3700740#3700740 –