С чем использовать AngularJS: с ASP.NET, ASP.NET MVC или с чистым .NET?

Добрый день.

Не так давно столкнулся с AngularJS.

Хочу познакомиться с ним плотнее.

Знакомые, которые его используют, говорят, что можно в принципе обойтись чистым .NET, нет необходимости создавать ASP.NET или ASP.NET MVC проект.

Мол, используя AngularJS, можно на серверной стороне обойтись SOA (сервис-ориентированной архитектурой).

Т.е. всю клиентскую часть на себя возьмёт AngularJS, а от сервера требуются только данные.

Можете высказать за и против?
  • Вопрос задан
  • 11288 просмотров
Решения вопроса 2
@Kokcuk
Недавно встал такой же вопрос - создания бекенда для js приложения, в конечном результате разницы нет между wcf и mvc, но выбрали mvc, потому что mvc - это готовый из коробки rest сервис, который без проблем отдает саму js страницу, все как надо сериализует через api методы, и не имеет никаких проблем с производительностью. В wcf чтоб так настроить придется попотеть.
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
angular нужно юзать с rest на серваке. А уж как вы делаете restfull-сервис, на голом .net или на asp .net mvc это уже детали, хотя думаю последний вариант по удобнее будет, либо еще есть варианты.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
bob_smith
@bob_smith
Только что закончили проект на связке ASP.NET MVC + WebApi + AngularJS. Получилось очень клёво. Логика такая: MVC-котнтроллеры возвращают только чистую вьюшку с разметкой для AngularJS, тот обращается к WebApi, получает в JSON данные, ну и мапит на вьюшку. И при изменении данных шлёт их в JSON обратно к WebApi.

Плюсы:
1) Чёткое разделение на слои логики. WebApi-контроллеры покрываются юнит-тестами.
2) Чёткое разделение работы клиентских и серверных разрабов. До разработчика клиентского кода доходят только интерфейсы моделей, причём уже гарантированно работающие, т.к. проверяются тестами.
3) Внешние сервисы (с которыми мы интегрируемся или, в перспективе, мобильное приложение) интегрируются с тем же api, с которым работает сам сайт.

Минусы:
1) Требуется дописать приличное количество клиентской логики для корректного отображения ошибок валидации.
2) Большие страницы (а в нашем конкретном проекте на одной странице отображалось несколько вьюшек с разными api-контроллерами) подгружаются достаточно долго: сначала отображается пустая страница, затем первая часть, спустя пару секунд ещё и т.п. Но это больше вопрос оптимизации чем AngularJS
Ответ написан
w1ld
@w1ld
Программирую
Можно воспользоваться ASP.NET Web API. Это какой-то вариант между WCF и MVC. Он заточен под http и заявлено (не пробовал), что запускается без IIS. Если вам на сервере не нужно вообще создавать VIEW, то, видимо, вам подойдет.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы