2017-01-31 1 views

답변

0

당신은 System.Web.Http.RouteAttribute로 사용할 수 있습니다 경로 컨트롤러 이름에 제한하지 얻으려고 컨트롤러 동작을 꾸미고 원하는 경로를 지정하십시오. 당신이하고 싶은 일에 따라, 이것은 당신에게 좋은 접근법 일 것입니다. 당신이 웹 API (2)를 사용하는 경우

0

이에 대한 Attribute Routing를 사용할 수 있습니다

[RoutePrefix("api/mine")] 
public class mineController : ApiController 
{ 
    [Route("method1")] 
    [HttpGet] 
    public IHttpActionResult Method1() 
    { 
     //Route would be api/mine/method1 
    } 

    [Route("method2")] 
    [HttpGet] 
    public IHttpActionResult Method2() 
    { 
     //Route would be api/mine/method2 
    } 
} 
0

예, 특성 라우팅을 사용하여.

1 단계 : WebApiConfig.Register 방법 라우팅 속성 사용 (기본적으로있을 수 있습니다, 나는 아무 렇게 나 기억하지 않습니다) :

config.MapHttpAttributeRoutes(); 

2 단계 : 필요 없음,하지만 대한 RoutePrefix 속성을 사용하는 것이 좋다 전체 제어부 :

[RoutePrefix("api/mycontroller") 
public class mineController : ApiController 
{ 
    .. 
} 

3 단계 :

[Route("myaction")] 
[HttpGet] /* or other HttpVerb */ 
public IHttpActionResult SomeMethod() 
{ 
    ... 
} 

[Route("myaction/{id}")] 
[HttpGet] /* or other HttpVerb */ 
public IHttpActionResult SomeMethod(int id) 
{ 
    ... 
} 
0 : 라우팅 프리픽스를 완료 한 각 방법에 Route 속성을 사용 여기

더 많은 정보 : https://www.asp.net/web-api/overview/web-api-routing-and-actions/attribute-routing-in-web-api-2

관련 문제