라우팅과 관련하여 도움이 될만한 사람이 있습니까? 에서동일한 유형의 매개 변수로 다른 GET 메소드를 실행하기위한 라우팅
는
config.Routes.MapHttpRoute(DefaultApi",
routeTemplate: "{controller}/{uid}",
defaults: new {uid = RouteParameter.Optional}
);
와 컨트롤러
[RoutePrefix("AppartmentCategory")]
public class AppartmentCategoryController : ApiController
{
[HttpGet]
public IHttpActionResult Get(Guid uid){...}
[HttpGet]
[Route("{propertyUid?}")]
public IHttpActionResult GetList(Guid propertyUid){...}
}
의 두 가지 방법은 내가 요청
1. http://.../AppartmentCategory/043F61D1-7194-E611-A98B-9C5C8E0005FA
및
를 보내려고하면 나는이 매핑이 WebApiConfig 방법 공공 IHttpActionResult GetList (GUID propertyUid)를 실행하는 두 가지 경우 모두 617,451,515,2. http://.../AppartmentCategory/?propertyUid=2fdc968d-0192-e611-a98b-9c5c8e0005fa
내가 먼저 요청 공공 IHttpActionResult 받기 GUID (UID) 방법을 실행하기위한 해결 놈이야 무엇입니까?
규칙 기반 라우팅과 속성 라우팅을 혼합합니다. 'config.MapHttpAttributeRoutes()'는 대회 루트 이전에 매핑되어 있으므로 (GetLists) 먼저 공격을합니다. 기술적으로 두 가지 동작 모두 비슷한 경로를 사용합니다. 두 가지 동작을 조금 더 차별화해야합니다. – Nkosi