将Angularjs框架与ASP.NET MVC集成的正确方法

Avi*_*ale -1 asp.net-mvc angularjs

我试图找出与ASP.NET MVC一起使用Angularjs框架的真正需要.因为我没有错,ASP.NET拥有自己的强大的路由引擎,MVC框架,它可以作为加载视图(模板)到母版页.

Angular的数据绑定功能(+1分).

我理解并建议将WebAPI与AngularJS一起使用,因为在这种情况下,webAPI只提供数据而不是前端(视图).

我看到几篇文章和博客,最重要的是关于如何使用,我也在使用,但是现在我遇到了这个问题为什么?真的需要吗?

可能是我的问题达不到水平,但可以有效点.

Jam*_*e F 6

AngularJS和ASP.NET MVC执行类似的功能.但他们以非常不同的方式去做.

AngularJS在客户端完成它的工作,而ASP.NET在服务器上做了很多工作.

所以呢?这些方法之间的差异导致实现和用户体验的一系列差异.一般来说,这里有一些Pro和Con:

AngularJS =客户端执行

优点

  • 更灵敏的页面对用户更改的反应
  • 更易于维护状态:客户端可以将内存保存在应用程序的生命周期内.

缺点

  • 初始页面加载时加载时间较长.
  • 可能需要编写两次验证,因为您仍应在服务器端进行验证.
  • 对客户端环境的依赖性,这可能比服务器更难控制.(例如,您的代码可能运行缓慢,因为用户的计算机速度很慢.)

ASP.NET MVC =服务器执行

优点

  • 对每个页面加载使用众所周知的POST和GET请求.
  • 每次请求都会清除状态,这可能更容易预测(但这也是一种痛苦.)
  • 服务器环境比客户端环境更容易控制.
  • 提供更轻松的跟踪和记录行为.
  • 通常可以使用写入后端层的相同对象和语言.

缺点

  • 需要更多网络流量,因为每个页面加载必须转到服务器并返回.通常对最终用户来说较慢.
  • 每个页面加载都是一个完整的页面加载.当页面重新加载时,您会看到导航栏闪烁.
  • 每次请求都会清除国家.

还有许多其他的差异,但这些是第一个想到的.