0
我有一個角2應用程序工作正常,除了路由。它與MVC5 asp.net應用程序一起運行。問題與角度2應用程序與asp.net MVC 5應用程序的路由
問題是它總是進入默認路由。也就是說,我提供的路線都不匹配。
@RouteConfig([
{ path: '/Page1', name: 'Page1', component: Page1Component, useAsDefault: true },
{ path: '/Page2', name: 'Page2', component: DPage2Component, useAsDefault: false }
])
如果我嘗試導航到:「本地主機:8000 /第2頁」則第2頁的MVC觀點是正確加載,但隨後的URL改變爲localhost:8000 /第2頁/第1頁和角應用的Page1將加載。
我已經嘗試在html頁面的頭部使用<base href="/">
,並且我嘗試了使用和不使用路徑中的/ slashed,但沒有一個匹配。
我的MVC路線的配置如下:在這個
app.UseMvc(config =>
{
config.MapRoute(
name: "Default",
template: "{controller}/{action}/{id?}",
defaults: new { controller = "Home", action = "Index" }
);
});
任何想法?即使是一些日誌記錄也會有幫助
我已經嘗試從angular2 beta8切換到beta 16,但是這並沒有解決問題。
是很難幫助你。我可以說的是你不需要聲明useAsDefault:false。錯誤時只需省略。另一個建議:儘快將你的Angular lib升級到最新版本(目前是RC 4),因爲你使用的路由器組件已經被棄用,並且新路由器組件已經改變了很多。 –
你的mvc路由配置是什麼樣的,你是否有任何重寫規則集? – garethb
感謝您的建議。我會盡快升級並儘快使用新的路由器。 我將編輯問題以包含我的MVC路由配置。不使用重寫規則。 謝謝你的建議。 – Sam