컨트롤러와 이름/경로가 같은 루트 수준 폴더를 만드는 경우 IIS가 폴더로 연결하려고 시도하고 WebAPI를 참조하지 않는 것 같습니다. 2 라우팅.컨트롤러와 이름이 같은 폴더를 만들면 404 - Web API 2가됩니다.
예 :
ProjectA
|- Controllers/
|-- ExamplesController.cs
|- Examples/
ExamplesController
[RoutePrefix("examples")]
public class ExamplesController : ApiController
{
[HttpGet]
[Route("")]
public async Task<IHttpActionResult> Get()
{
// code
}
}
기대가 컨트롤러를 공격하다, 그러나 IIS 시도하고 대신 폴더를 탐색 할 것으로 보인다.
예 : http://localhost:123/examples
시도 솔루션 :
는 내가 다른 모든 핸들러를 제거 할 수 있는지 확인하기 위해 IIS 핸들러 주위를 재생하려고했지만 그
웹을 도움이되지 않았다 .config
퍼펙트, 이것을 시도해보고 설명한대로 작동하면 대답으로 표시합니다. – Oliver
시도해 보셨습니까? 어떤 문제? –
Google API의 정적 콘텐츠를 제공하지 않기 때문에 정상적으로 작동했습니다. 무제한 라우팅과 정적 컨텐츠를 모두 제공해야하는 경우 더 까다로울 수 있습니다. – Oliver