2017-09-26 173 views
0

是否可以删除我的ASP.net路由模块,并在我的asp.net应用中包含角路由和SPA功能?从ASP.net路由模块迁移到角路由

这样做会有什么好处吗?

+0

如果你正在谈论angulaJs,那么希望它能帮助你。 https://stackoverflow.com/questions/29903751/angularjs-routing-with-asp-net-mvc –

+0

我会更好奇它的好处,而不是实施 – SmartestVEGA

回答

0

我不确定我们是否在这里的同一页,但我相信你误解了每个人的目的。 ASP.NET和Angular(或任何SPA)的路由功能不是竞争技术,它们服务于完全不同的目的。

ASP.NET路由器的责任是将传入请求“路由”到服务器,简单地说,将URL映射到控制器操作。

Angular(或任何SPA路由器)的责任是“跟踪”您的位置在客户端应用程序内。这使不同的事情成为可能。例如,它允许你与你的大学分享一个链接,以便他将登录应用程序的相同部分,就像你分享链接时一样。与常规的DOM hackery比较,在这种情况下,您只需根据用户交互来隐藏/显示元素。在这种情况下(除非您提供自己的解决方案以解决该问题),重新打开该页面后,它将显示为其默认状态。

当您浏览客户端时,它是正在使用的Angular路由器。然而,在大多数情况下,客户端SPA仍然需要数据,这些数据由一些后端服务器提供,可能是ASP.NET服务器。为了实现这一点,您需要执行 - 例如 - AJAX-调用来从服务器检索数据。这就是ASP.NET路由器发挥的作用,因为它是将您的AJAX请求映射到适当的控制器操作的路由器。这种情况与普通网站的唯一区别在于,您的控制器操作旨在为(例如)JSON客户提供服务。

我希望这是一个足够简单的解释来清除这些。