2013-09-22 1 views
0

WebApi 및 속성 라우팅을 사용하고 있습니다.WebApi 및 속성 라우팅을 사용하여 컨트롤러에서 기본 경로를 얻으려면 어떻게해야합니까?

고객을 위해 모든 동물을 확보 할 수있는 고객 컨트롤러가 있습니다. 이 방법은 & 경로가 잘 작동합니다. 그러나, 나는 또한 모든 고객의 목록을 반환하는 메서드를 원한다. 그리고 나는 그것을 작동시킬 수 없다.

내가 "{customerId}/List"하고 전달 된 매개 변수를 무시 목록 경로를 변경하는 경우
[RoutePrefix("api/customer")] 
    public class CustomerController : ApiController 
    { 
     [HttpGet("{customerId}/animals")] 
     public PagedHorse Get(int customerId) 
     { 
       Console.WriteLine("Get"); 
     } 

     [HttpGet("")] 
     public PagedCustomer List() 
     { 
       Console.WriteLine("List"); 
     } 
    } 

, 그것은 작동합니다

여기 내 컨트롤러입니다. 이 길로 내가 뭘 잘못하고 있니? 난 단지 api/customer 모든 고객의 목록을 반환하고 싶습니다.

+0

이것은 정상적인 시나리오입니다. 나는 그것을 직접 시도하고 당신이 언급 한 문제를 재현 할 수 없었다. 당신이보고있는 응답은 무엇입니까? –

+0

나는 404를 얻고있다. 그러나 Hot Towel SPA를 사용하고 있으며 라우팅으로 어떤 일을한다는 것을 깨달았습니다. 그래서 그것을 점검하고 간섭이 있는지 살펴 보겠습니다. – taylonr

답변

0

Hot Towel SPA 프로젝트 유형과 프로젝트간에 약간의 간섭이 있었던 것으로 보입니다. Hot Towel을 처음부터 시작하지는 않았지만 기존 프로젝트에 추가 했으므로 라우팅 문제가 있다고 생각합니다.

거기서 완료된 모든 작업이 이미 ASAX 파일에서 수행 중이므로 HotTowel 관련 Configs (예 : HotTowelRouteConfig)가 삭제되었습니다.

그 후 모든 것이 정상적으로 작동했습니다.

관련 문제