ASP.NET MVC 5 против AngularJS/ASP.NET WebAPI

В настоящее время я оцениваю модель программирования для создания будущих веб-приложений в своей компании. Поэтому я буду решать между ASP.NET MVC 5 (с Razor Views) и AngularJS с помощью ASP.NET WebAPI. Каковы преимущества/недостатки этих двух моделей программирования?

Ответ 1

Мои 2 цента. Я лично предпочитаю чистые представления HTML, полностью angular, а также интерфейс Web API/EF/SQL Server, в основном не Razor. Razor - это абстракция, помогающая программистам визуализировать HTML, в наши дни все приходят к выводу, что удаление этих абстракций - лучшая идея, отсюда эволюция ASP.NET из веб-форм, MVC и т.д. Разработчикам не сложно захватывает HTML и использует внешний интерфейс angular, более того, это упрощает работу дизайнеров пользовательского интерфейса, у них есть чистый HTML и JSON/Javascript, им не нужно разбираться в MVC, Razor, контроллерах и действиях. Мы работали полностью над MVC, в нашем последнем проекте мы перешли к интерфейсу Web API и интерфейсу angular, и мы заметили, что наша производительность дизайнера пользовательского интерфейса значительно улучшилась.

Ответ 2

Я считаю, что вы не можете сравнивать. AngularJS - это приложение для одиночной страницы (SPA), тогда как ASP.Net MVC использует стандартную модель, в которой перемещаются между страницами. Если вы хотите построить SPA, то решаете такие факторы, как

  • Вы хотите SEO. Какая большая часть этих JS-ресурсов имеет ограниченную поддержку.
  • Как вы можете структурировать свое приложение как SPA или несколько SPA.
  • Исходя из типа безопасного языка С# для программирования JavaScript является проблемой.
  • Изучение AngularJS и эффективное использование.

Мы используем стандартный вид бритвы MVC 5 для настройки начальных представлений AngularJS, чтобы вы могли даже комбинировать их вместе, если это необходимо.

См. этот ответ Можете ли вы использовать AngularJS с Parse.com?, чтобы получить больше контекста.