#javascript #asp.net-mvc #angularjs #asp.net-web-api #angular-ui
#javascript #asp.net-mvc #angularjs #asp.net-веб-api #angular-пользовательский интерфейс #asp.net-web-api
Вопрос:
В настоящее время у нас есть asp.net веб-приложение webforms, которое нуждается в обновлении с точки зрения внешнего вида и скорости. Я думаю, что пришло время его переделать, и я подумывал о создании WebAPI и изменении веб-сайта на asp mvc. Но потом я начал использовать AngularJS, и мне это понравилось, теперь я подумываю о переделке нашего сайта с использованием AngularJS и WebAPI.
Прав ли я, думая, что использование AngularJS ASP MVC бессмысленно, поскольку это почти одно и то же (хотя 1 — это клиентская сторона, а 1 — серверная)
Также у меня есть пара вопросов об использовании AngularJS на веб-сайте.
-
В мобильных приложениях, которые я использовал AngularJS, я использовал routeProvider и stateProvider для изменения страницы. Это добавляет #/ SOMETHING к URL-адресу, и angular соответствующим образом загружает правильный контент. Нормально ли это работает с поисковыми системами, такими как Google?
-
Должно ли все веб-приложение состоять из одного приложения в angular, или оно должно быть разбито на модули приложений, и каждый из них должен быть отдельным «приложением», даже если это 1 веб-сайт? Меня интересует производительность. Допустим, у меня есть веб-сайт, где пользователь может просматривать компании, контакты, проекты. Каждый модуль может содержать 10 разных страниц, может ли angular справиться с этим? В нашем приложении у нас было бы более 20 модулей, каждый из которых содержал бы, возможно, более 10 страниц.
-
Это то, чего мне следует избегать? Будет ли ASP MVC WebAPI лучше?
Любые другие взгляды и заключения очень приветствуются, я хочу получить как можно больше информации, прежде чем принимать свое решение и развиваться.
Заранее спасибо
Ответ №1:
Позвольте мне попытаться решить некоторые из ваших проблем.
ASP.Чистые частичные представления все еще можно использовать, даже если вы решите использовать AngularJS и WebAPI. Просмотр сервера имеет некоторые преимущества. Например, если в вашем представлении есть элементы, доступные только для авторизации пользователей в определенной роли, тогда лучше не передавать содержимое этого представления с сервера, а не скрывать его на стороне клиента с помощью AngularJS.
Я не занимался мобильной разработкой с использованием AngularJS, поэтому не могу ответить на ваш пункт 1. Но что касается SEO, то у каждой клиентской платформы есть одна и та же проблема. Погуглите SEO techniques
Angular, и вы, возможно, найдете что-то интересное.
Что касается пункта 2, все зависит. Можно создать несколько приложений SPA, если функциональность является второстепенной. Например, пользовательская часть приложения и административная часть приложения могут быть разными SPA, но они также могут быть и одним SPA. Я думаю, что все зависит от сценария, и нет жесткого правила.
Для пункта 3 это слишком широкий вопрос. Я могу только сказать, что AngularJS — это очень способный фреймворк, который может делать все, чего могут достичь MVC WebAPI. Здесь задействована кривая обучения, и требуется некоторое время, чтобы делать вещи с помощью Angular, но я считаю, что это того стоит.
Комментарии:
1. Спасибо за ответ. Если я использую ASP.MVC AngularJS, загружается ли мое приложение при каждом вызове сервера / изменении страницы? Я никогда не имел дела с вызовами серверных страниц с помощью angular.
2. Это не вызов страницы сервера. Посмотрите на этот проект VS template visualstudiogallery.msdn.microsoft.com / … для интеграции MVC, WebAPI и AngularJS. Это простая реализация, которую я выпустил. Это должно ответить на ваши вопросы.