Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 带asp.net mvc的角度4布线(共享布局)_Asp.net Mvc_Angular_Angular4 Router - Fatal编程技术网

Asp.net mvc 带asp.net mvc的角度4布线(共享布局)

Asp.net mvc 带asp.net mvc的角度4布线(共享布局),asp.net-mvc,angular,angular4-router,Asp.net Mvc,Angular,Angular4 Router,我正在用asp.net mvc和angular 4构建一个应用程序。我有一个共享布局,其中包含我的页面的所有链接,它是.cshtml。当我给一个链接,将使用角路由。但当我点击链接时,它不工作,页面不显示 我的共享版面链接代码: <li><a href="@Url.Action("Index","Admin")">User List</a></li> <li><a h

我正在用asp.net mvc和angular 4构建一个应用程序。我有一个共享布局,其中包含我的页面的所有链接,它是.cshtml。当我给一个链接,将使用角路由。但当我点击链接时,它不工作,页面不显示

我的共享版面链接代码:

         <li><a href="@Url.Action("Index","Admin")">User List</a></li>
                        <li><a href="@Url.Action("PermissionIndex","Admin")">Permission Index</a></li>
                        <li><a href="@Url.Action("RoleCreate","Admin")">Role Create</a></li>
                        <li><a href="@Url.Action("RoleIndex","Admin")">Role Index</a></li>
                        <li><a routerLink="/homes" routerLinkActive="active">Home</a>  </li>
const routes: Routes = [
  { path: '', redirectTo: '/dashboard', pathMatch: 'full' },
  { path: 'dashboard',  component: DashboardComponent },
  { path: 'detail/:id', component: HeroDetailComponent },
  { path: 'heroes', component: HeroesComponent },
  { path: 'homes', component: HomeComponent }

];

@NgModule({
    //imports: [
    //    BrowserModule,
    //    FormsModule,
    //    RouterModule.forRoot(routes, { useHash: true })  // .../#/crisis-center/
    //],
  imports: [ RouterModule.forRoot(routes) ],
  exports: [ RouterModule ]
})

When I click on home then nothing showing up.
这是应用程序路由模块:

         <li><a href="@Url.Action("Index","Admin")">User List</a></li>
                        <li><a href="@Url.Action("PermissionIndex","Admin")">Permission Index</a></li>
                        <li><a href="@Url.Action("RoleCreate","Admin")">Role Create</a></li>
                        <li><a href="@Url.Action("RoleIndex","Admin")">Role Index</a></li>
                        <li><a routerLink="/homes" routerLinkActive="active">Home</a>  </li>
const routes: Routes = [
  { path: '', redirectTo: '/dashboard', pathMatch: 'full' },
  { path: 'dashboard',  component: DashboardComponent },
  { path: 'detail/:id', component: HeroDetailComponent },
  { path: 'heroes', component: HeroesComponent },
  { path: 'homes', component: HomeComponent }

];

@NgModule({
    //imports: [
    //    BrowserModule,
    //    FormsModule,
    //    RouterModule.forRoot(routes, { useHash: true })  // .../#/crisis-center/
    //],
  imports: [ RouterModule.forRoot(routes) ],
  exports: [ RouterModule ]
})

When I click on home then nothing showing up.

我在尝试将Angular添加到现有ASP.NETMVC网站时也遇到了同样的问题

我已将以“/app”开头的每个路径的路由配置为重定向到我的AppController(我的应用程序主页)

我在MVC和Angular页面之间有一个共享布局,其中包含大量@Url.Action和@Action.Links的菜单

这是我最初的MVC路由,也是导致问题的原因

public class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            "Default",
            "{controller}/{action}/{id}",
            new {controller = "Home", action = "Index", id = UrlParameter.Optional},
            new
            {
                serverRoute = new ServerRouteConstraint(url => !url.PathAndQuery.StartsWith("/app", StringComparison.InvariantCultureIgnoreCase))
            }
        );

        routes.MapRoute(
            "angular",
            "{*url}",
            new {controller = "App", action = "Index"}
        );
    }
}
这方面的问题是,正在解决一个@Url.Action:

<a href="@Url.Action("Action", "Controller")">Link</a>

这是一个巨大的帮助!非常感谢。