7

opensource Attribute Routing 오픈 소스는 여러 개의 경로 접두어를 가질 수 있습니다. ASP.NET Web API 2.0에서 여러 RoutePrefix()를 사용할 수없는 이유는 무엇입니까?ASP.NET 웹 API multiple RoutePrefix

[RoutePrefix("api/v1/{abc}/Entity")] 
[RoutePrefix("api/v1/{abc}/{xyz?}/Entity")] 
public class MyApiController : ApiController 
{ 
    [Route("")] 
    public IHttpResult Get() 
    { 
     return Ok("Hello World"); 
    } 
} 
당신은 "~"

예와도 RoutePrefix을 무시 액션 메소드에 경로를 추가 할 수 있습니다

+1

WebApiController에 여러 개의 RoutePrefix 속성을 추가 할 수 있습니다. https://3btechtalk.wordpress.com/2017/05/07/defining-multiple-route-prefix-in-asp-net-web-api-attribute-routing/ –

답변

21

:

[RoutePrefix("api/v1/{abc}/Entity")] 
public class MyApiController : ApiController 
{ 
    [Route("")] 
    [Route("~/api/v1/{abc}/{xyz?}/Entity")] 
    public IHttpResult Get() 
    { 
     return Ok("Hello World"); 
    } 
} 

공지 사항 라인 : [경로 ("~/

+0

와우, 멋지다! 이것은 매우 유용합니다. – Dan

+1

허용되는 대답이어야 함 –

+2

왜 이것이 대답입니까? 다중 경로 접두어는 각 메소드에 대해 여러 [Route] 속성을 피할 수 있으며 큰 API 컨트롤러에서 유지 관리를 쉽게 할 수 있도록 도와줍니다. –