Я пытаюсь понять архитектуру современных веб-приложений. В ASP.NET MVC все классы бизнес-логики находятся в Model и Controller, которые принимают и направляют пользовательские запросы. Если я использую его, можно ли использовать Angular JS, который сам является MVC-архитектурой, но вся бизнес-логика находится в контроллере и модель - только POJO. Может ли Angular JS использоваться только с Web API 2, где он получает данные из службы RESTful и выполняет все манипуляции на стороне клиента? Какая архитектура наиболее часто используется?В чем разница между MVC в Angular JS и MVC в ASP.NET или Spring MVC?
ответ
В ASP.NET MVC, все бизнес-логики классов в модели и контроллер принимает и направляет запросы пользователя
Это не верно. Модели (a.k.a. ViewModels) должны быть прозрачными («POCO») контейнерами данных в ASP.NET MVC. Бизнес-логика должна исходить от уровня, потребляемого контроллерами, но в небольших приложениях или до рефакторинга контроллер является более подходящим выбором, чем модель (View).
Может ли Angular JS использоваться только с Web API 2, где он получает данные из службы RESTful и выполняет все манипуляции на стороне клиента? Какая архитектура наиболее часто используется?
Нет, вы можете использование ASP.NET MVC с угловой JS, а также путем возврата JsonResults от действий регулятора. Тем не менее, WebAPI является лучшим/более подходящим выбором. Конечно, вы также можете использовать Angular со многими другими инструментами, отличными от Microsoft, которые возвращают JSON через http (s) (например, узел, ruby, java и т. Д.).
Чтобы более точно ответить на ваш реальный вопрос, основное различие между ними состоит в том, что один является шаблоном MVC для сервера, а другой является шаблоном MVC для браузера. Угловая на самом деле любит называть ее «MVW», где «W» означает «Что бы ни было».
Это очень радикальное утверждение «Это неверно. Модели должны быть прозрачными (« POCO ») контейнерами данных в ASP.NET MVC. Бизнес-логика должна либо поступать в действия контроллера, либо на другом уровне, который потребляют контроллеры». ... Контроллеры не должны содержать бизнес-логику, на мой взгляд, и «модели» не всегда должны быть просто объектами poco ... – BenjaminPaul
Хорошо, я ссылался на это: https://msdn.microsoft.com/en-us/library/dd381412 (v = vs.108) .aspx – CodeBeginner
«В ASP.NET MVC все классы бизнес-логики в Model и Controller принимают и направляют пользовательские запросы». << Это на самом деле более верно, на мой взгляд. – BenjaminPaul
С моей точки зрения, вы смешиваете две очень разные технологии; Один из них - серверный (ASP.NET MVC), один - клиентский (AngularJS).
Эти два варианта можно использовать вручную, так как они не зависят от других существующих. И, IIRC, в NuGet есть модуль лесов, который помогает привязывать друг к другу (создавать объекты JS из объектов ASP.NET POCO).
С учетом этого, нет причин для вас использовать оба. Вы можете использовать один или другой, оба, или вообще использовать другую технологию (KnockoutJS и т. Д.)?
Как и другие шаблонов проектирования (Singleton, Factory, метод Factory) MVC также шаблон дизайна, который мы можем использовать в любой технологии, как (Java, .net, PHP) или каких-либо скриптов клиента сайта. нет никакой разницы между MVC в Angular JS и MVC в ASP.NET и Spring MVc
- 1. В чем разница между asp.net, asp.net mvc и core asp.net
- 2. В чем разница между HandlerInterceptor и HandlerInceptorAdaptor в Spring MVC?
- 3. В чем разница между Session и ViewData в Asp.net-MVC?
- 4. В чем разница между ASP.Net MVC и ASP.Net MVC2?
- 5. В чем разница между MVP и MVC?
- 6. В чем разница между View и PartialView в ASP.NET MVC?
- 7. В чем разница между <% # и <% = в ASP.NET MVC?
- 8. В чем разница между <%: и <% = в ASP.NET MVC?
- 9. В ASP.NET MVC, в чем разница между <% = и <% :?
- 10. В чем разница между RouteLink и ActionLink в ASP.NET MVC?
- 11. Разница между Asp.net MVC 1 и Asp.net MVC 2
- 12. ASP.NET MVC и Angular JS переломный момент
- 13. В чем разница между ASP.NET 5 платформы и MVC 6
- 14. В чем разница между ядром Asp.NEt и MVC 6?
- 15. ASP.NET MVC Razor - В чем разница между Html.Partial и RenderSection?
- 16. Spring MVC - Разница в сеансах
- 17. В чем разница между четырьмя файла результатов в ASP.NET MVC
- 18. В чем разница между MVC Controller и Web API Controller в ASP.NET MVC 6?
- 19. Spring MVC vs ASP.NET (MVC?)
- 20. Spring MVC - разница между HttpSession.setAttribute и model.addObject
- 21. В чем разница между struts2 и весной MVC
- 22. В чем разница между asp.net 5 стартовой сетью против MVC
- 23. ASP.NET MVC vs Spring MVC
- 24. Asp.NET MVC - MVC или MVP?
- 25. Сессии в ASP.NET MVC
- 26. В чем разница между MVC 2 и MVC3
- 27. В чем разница между атрибутами и фильтрами в MVC
- 28. В чем разница между ViewModel и контроллером в ASP MVC
- 29. Разница между MVC и MVR?
- 30. В чем разница между tempdata.peek() и переменной сеанса в mvc?
Вы можете найти [этот вопрос] (http://stackoverflow.com/questions/29919834/asp-net-mvc-and -angularjs-together-asp-net-web-api). Подводя итог: существует множество возможных комбинаций, выберите то, что соответствует вашим потребностям. –
Как я вижу, ASP.net занимается управлением взаимодействием с бизнес-логикой приложения, Angular занимается управлением пользовательским интерфейсом (пользовательским интерфейсом). Это не конкурирующие цели, и Angular может использоваться как SPA с поддержкой сервера или использоваться как новое приложение на каждой странице, чтобы обеспечить поддержку тяжелого рабочего процесса сервера. – Claies