2017-12-16 22 views
0

면도날 페이지의 URL 중간에 매개 변수가있을 수 있습니까?면도기 페이지 ASP.Net Core 2.0 Routing - URL 중간에 매개 변수가있을 수 있습니까?

는 예 :

파일 구조 :

  • /제품/인덱스 <는 --- 제품
  • 의 목록을 표시
  • /제품/제품/색인 < - 제품 페이지
  • /제품/제품/페이지 1
  • /제품/제품/페이지 2
  • /제품/제품/ListOfAccessories/인덱스
  • /제품/제품/ListOfAccessories/세부

나는 제품 목록에 대한 경로를 만들 수 있지만 URL의 중간에 매개 변수를 알아낼 수 없습니다 당신은 컨트롤러 노선에서와 동일한 방식으로 내부 규칙 및 사용에 매개 변수를 추가 할 수 있습니다 options.Conventions.AddPageRoute

감사

답변

0

를 사용하여.

options.Conventions.AddPageRoute("/Products", "products/{id}/details") 
options.Conventions.AddPageRoute("/Products", "products/{id}/listofaccesories") 

또는 더 일반적인 방법

options.Conventions.AddPageRoute("/Products", "products/{id}/{handler}") 

{핸들러} 매개 변수

는 방법 매핑이 경로를 찾기 위해 면도기 페이지 엔진에 의해 사용됩니다. 이 두 가지 구성을 라우팅 /제품/20120/세부 ProductsModel 페이지의 URL의 id 인수로 20120을 복용하고 ProductsModel 내부의 Details 핸들러를 선택.

public ProductsModel : PageModel 
{ 
    ... 

    public Task OnGetDetails(int id) 
    { 
    ... 
    } 

    public Task OnGetListOfAccessories(int id) 
    { 
     ... 
    } 

    ... 
}