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