2017-09-26 174 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客戶提供服務。

我希望這是一個足夠簡單的解釋來清除這些。