AngularJS 2에서 ASP.NET MVC (코어가 아닌)를 사용하려고하고 라우팅에 문제가 있습니다. RouteConfig.cs 최초 Angular 2 - ASP.NET MVC를 사용한 라우팅
, 내 app.route.ts에서routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
// when the user types in a link handled by client side routing to the address bar
// or refreshes the page, that triggers the server routing. The server should pass
// that onto the client, so Angular can handle the route
routes.MapRoute(
name: "spa-fallback",
url: "{*url}",
defaults: new { controller = "Home", action = "Index" }
);
(각 경로를) 정의 된 경로를 따라 한 난 그냥 경로의 몇 가지를 정의했습니다. 내 기본 경로는 내 app.route.ts에서 각 응용 프로그램과 기본 경로는 저를 리디렉션로드 내가 응용 프로그램을 실행할 때, 내 서버 경로/홈/색인 벌금 제공됩니다
export const router: Routes = [{
path: '',
redirectTo: 'auctions/e231',
pathMatch: 'full'
},
{
path: 'auctions/:id',
component: AuctionComponent,
children: []
}
];
같은 다른 경로로 리디렉션 경매/E231에 내 브라우저의 최종 URL이 예상대로
http://localhost:53796/auctions/e231
모든 작동이됩니다하지만이 URL로 페이지를 새로 고침 할 때, 나는 그것이 찾기 때문도 예상된다 찾을 수없는 자원에 대한 서버 오류를 얻을 컨트롤러는 MVC에없는 Auctions라는 이름을 갖습니다. RouteConfig.cs의 내 spa-fallback 경로가 선택되지 않은 이유를 알고 싶습니다. 또한/계정/로그인 및 다른 같은 내 MVC 컨트롤러의 작업 중 일부를 사용할 수 있기 때문에 asp.net mvc이이 시나리오를 처리하는 더 좋은 방법이 있습니다.
왜 서버 측에서 하나의 경로를 사용하지 않고 클라이언트 측에서 하나의 경로를 사용하지 않습니까? 나는 면도기에 집보기를 가져오고 html과 js에서 각도 라우터가 작동하도록 하시겠습니까? –
Ang2와 함께 asp.net MVC (사용자 인터페이스)를 사용하는 것은 좋지 않습니다. –
@HassanFalahi 예. 요구 사항은 ID 서버를 사용하고 사용자 관리를 위해 템플릿을 사용하는 것입니다. –