두 프로젝트로 하나의 솔루션을 만들었습니다 : 하나는 자체 호스트 웹 API (http://www.asp.net/web-api/overview/hosting-aspnet-web-api/self-host-a-web-api의 도움으로 생성)가있는 클래스 라이브러리이고 두 번째는 TopShelf로 만든 Windows 서비스입니다 . 이 솔루션의 목적은 웹 API를 사용하여 서비스에 대한 상태 보고서를 작성하는 것입니다.컨트롤러가 있어도 웹 API에서 컨트롤러를 찾을 수 없음
모든 것이 잘 작동하지만 대상 솔루션 내에서 솔루션을 다시 만들 때 전체 응용 프로그램이 제대로 작동하지 않습니다. Windows 서비스가 작동하고있는 것처럼 보입니다. 그러나 localhost : 8080/Test를 입력하면 OK (그리고 별도의 테스트 솔루션에서 처음 언급 한 것처럼 보입니다) 오류가 발생합니다 (xml로 표시) :
Message: No HTTP resource was found that matches the request URI 'http://localhost:8080/Test'.
MessageDetail: No type was found that matches the controller named 'Report'.
SelfHost가 포함 된 프로젝트에서 ReportController (ApiController에서 상속)가 있지만 어떻게 든 볼 수 있습니다. 추측을했는데 (바보 같아서), Windows 서비스 프로젝트로 옮겼지만 작동하지 않습니다.
누군가 내가 겪고있는 문제가 무엇인지 말해 줄 수 있습니까? 컨트롤러가 단순한 솔루션에 있다면 컨트롤러가 보이지 않는 이유는 무엇입니까?
편집 : 내 경로는 다음과 같습니다 : 그것은 수치이다
defaultControllerName = "Report";
경로/web-api 설정을 볼 수 있습니까? –
예. 경로를 게시하십시오. 그리고 서비스가 관리자로 실행되는지 확인하십시오. 확실하지 않지만 로컬 시스템에 URL을 예약해야 할 수도 있습니다. – Fabske