使用AngularJS和WebApi是否适用于大型复杂系统?问题也

时间:2014-07-03 08:53:18

标签: javascript asp.net-mvc angularjs asp.net-web-api angular-ui

我们目前有一个asp.net webforms Web应用程序,需要在外观和速度方面进行更新。我认为是时候重新开发它并考虑创建webApi并将网站更改为asp mvc。但后来我开始使用AngularJS并喜欢它,现在我正在考虑使用AngularJs和webApi重新开发我们的网站。

我认为使用AngularJs + ASP MVC是没有意义的,因为它们几乎是一样的(尽管1是客户端,1是服务器端)

此外,我还有一些关于在网站上使用angularJs的问题。

  1. 在我使用过angularJS的移动应用中,我使用了routeProvider和stateProvider来更改页面。这会将#/ SOMETHING添加到网址,角度会相应地加载正确的内容。这对谷歌等搜索引擎有效吗?

  2. 整个网络应用程序应该是角度内的1个应用程序,还是应该分解为应用程序模块,每个应用程序模块都是一个单独的应用程序,即使它是1个网站?我想知道性能。假设我有一个网站,用户可以查看公司,联系人,项目。每个模块可能有10个不同的页面,可以角度处理这个吗?在我们的应用程序中,我们将有20多个模块,每个模块可能有10页+。

  3. 这是我应该避免的吗? ASP MVC + webApi会更好吗?

  4. 非常欢迎任何其他观点和意见,我希望在做出决定和发展之前尽可能多地获取信息。

    提前致谢

1 个答案:

答案 0 :(得分:2)

让我试着解决你的一些问题。

即使您决定使用AngularJS和WebAPI,仍然可以使用ASP.Net部分视图。拥有服务器视图有一些优点。例如,如果您的视图具有仅可以授权特定角色的用户的元素,那么最好不要从服务器发出该视图内容,而不是使用AngularJS将其隐藏在客户端。

我没有使用AngularJS进行移动开发,所以我无法回答你的要点1.但就SEO而言,每个客户端框架都有同样的挑战。适用于Angular的Google SEO techniques,您可能会发现一些有趣的内容。

关于子弹2,全部取决于。如果功能相切,则可以创建多个SPA应用程序。例如,应用程序的用户端和应用程序的管理员端可以是不同的SPA,但它们也可以是单个SPA。我认为一切都取决于场景,并没有严格的规则。

对于子弹3,这是一个太广泛的问题。我只能说AngularJS是一个非常强大的框架,可以完成MVC + WebApi可以实现的所有功能。有一个学习曲线涉及到Angular方式需要一些时间,但我相信它是值得的。