Angularjs + ASP.NET MVC + ASP.NET Web API

Я планирую создать новое веб-приложение. Я хорошо разбираюсь в ASP.NET MVC и jQuery и хорошо знаком с Web API. Я новичок в Angularjs, но я хочу использовать его на стороне клиента для сложных страниц, требующих манипуляций с DOM. У меня есть следующие проблемы:

  • Должен ли я по-прежнему рассматривать структуру приложений с одной страницей, зная, что это будет приложение среднего масштаба со многими страницами и сложная логика/алгоритмы.
  • Я слышал, как люди говорили о замене ASP.NET MVC + jQuery полностью на ASP.NET Web API + Angularjs. Это действительно лучший выбор для средних или крупных веб-приложений со сложной логикой. Если да, то что является альтернативой сеансу, аутентификацией и т.д.
  • Было бы разумным решением использовать ASP.NET Web API, ASP.NET MVC и Angularjs вместе.
  • Что такое совместимость между последними версиями jQuery, Bootstrap и Angularjs.
  • Увеличение времени разработки/стоимости с помощью Angularjs + SPA вместо ASP.NET MVC + jQuery (Non-SPA).

Есть ли какое-либо тело, написанное средним/крупномасштабным сложным веб-приложением с использованием Angularjs?

Ответ 1

Должен ли я по-прежнему рассматривать структуру приложений с одной страницей, зная, что это будет приложение среднего масштаба со множеством страниц и сложной логикой/алгоритмами.

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

Я слышал, как люди говорили о замене ASP.NET MVC + jQuery полностью на ASP.NET Web API + Angularjs. Это действительно лучший выбор для средних или крупных веб-приложений со сложной логикой. Если да, то что является альтернативой сеансу, аутентификацией и т.д.

Замените jQuery на AngularJS, за исключением тех редких случаев, когда jQuery делает то, что Angular не может. По моему опыту я использую только jQuery для редких ситуаций выбора DOM.

Angular JS очень хорошо разбирается в проблемах, привязывает данные, обновляет пользовательский интерфейс и поощряет хорошие методы программирования, такие как IOC/инъекции зависимостей и SOLID.

WebApi не заменяет MVC как таковой; но то, что вы должны делать, это использовать WebApi, где это имеет смысл. То есть, всякий раз, когда вы вызываете асинхронные вызовы (AJAX) с помощью Angular, он должен взаимодействовать с базовым интерфейсом WebApi. Простые материалы Get/Post.

Было бы разумным решением использовать ASP.NET Web API, ASP.NET MVC и Angularjs вместе.

Совершенно верно. Я рекомендую это.

Какова совместимость последних версий jQuery, Bootstrap и Angularjs.

Bootstrap зависит от jQuery. Angular нет. Все они работают безупречно друг с другом. Я использую их все (но я не очень часто взаимодействую с jQuery).

Увеличится ли время разработки/стоимость использования с помощью Angularjs + SPA вместо ASP.NET MVC + jQuery (Non-SPA).

AngularJs имеет кривую обучения и не так прост, как jQuery. То есть, это не совсем так, как pick-up-and-go как jQuery.

В первую очередь это занимает много времени, но со временем я считаю, что легкость отладки, принудительное разделение кода и лучшие практики означают, что Angular более надежный, более гибкий, меньше кода, повторное использование кода и т.д.

Обратите внимание, что, хотя я поклонник AngularJS, другие фреймворки javascript, такие как Ember, Backbone, Knockout и так далее, Я уверен, так же отлично. Индивидуальные предпочтения/опыт.

Ответ 2

Im в аналогичной ситуации, но Ive начал видеть путь через "туман" с использованием этих новых фреймворков, таких как AngularJS при использовании вместе с MVC. Я проходил несколько онлайн-уроков по Pluralsight и согласился с одним из авторов Shawn Wildermuth, который рекомендует использовать "комбинированный" подход при рассмотрении концепции SPA. В принципе, ограничивайте "страницы SPA" только теми, которые его оправдывают, в противном случае используйте представления MVC и т.д.