2016-07-14 1 views
0

내가 마이그레이션하는 솔루션은 프레임 워크 4이며 웹 응용 프로그램이 참조하는 서비스 호스트 웹 사이트가 있습니다. ServiceHost 프로젝트의 svc 파일은 클래스 라이브러리 인 다른 프로젝트를 가리 킵니다. 이 프로젝트는 svc 코드가 가리키는 서비스 호스트 팩토리 클래스뿐만 아니라 데이터 계약 및 서비스 계약의 구현을 포함합니다.ASP.Net Framework 4.5.1 로의 변환은 자체 호스팅 웹 서비스에 어떤 영향을 줍니까?

솔루션을 실행하면 Wcf 서비스 호스트가 시작되지만 Wcf 서비스 호스트에 나열된 서비스는 항상 중지됩니다. 서비스를 클릭하면 "서비스를 시작할 수 없습니다.이 서비스에는 정의 된 끝 점이 없습니다. 서비스의 끝점을 구성 파일에 하나 이상 추가하고 다시 시도하십시오."라는 오류 메시지가 나타납니다. Visual Studio는 "끝점 주소에서 메시지를 수락 할 수있는 끝점이 없습니다.이 오류는 종종 잘못된 주소 또는 SOAP 동작으로 인해 발생합니다." 서비스의 URL을 사용하여 브라우징하면 HTTP 404 오류가 발생합니다.

multipleSiteBindingsEnabled를 true로 설정하고 상대 주소를 사용해 보았습니다. basicHttpBinding 이외의 바인딩을 사용; 서버의 Web.config 공백에서 끝점 주소 값을 빈 문자열로 변경합니다. 클라이언트 응용 프로그램에서 이전 서비스 참조를 삭제하고 다시 추가했습니다. 우리가 사용하고있는 포트는 차단되지 않고 VS2015를 관리자로 실행하도록 설정했으며 서비스를 차단하는 방화벽과 바이러스 백신 소프트웨어를 배제했습니다. 나도 this article를 따라 갔고, 무시 될 2 개의 길을 더했다. 그러나 아직도 간다.

제 질문은 .Net 4.5와 이전의 자체 호스팅 웹 서비스간에 호환성 문제가 있습니까? 문제의 원인은 무엇일까요?

+0

두 프로젝트를 모두 시작하도록 설정 했습니까? 솔루션 속성 -> 시작 프로젝트에서 "다중 시작 프로젝트"를 사용하도록 설정하고 호스트 프로젝트 작업을 시작하도록 설정해야합니다. 그런 다음 사이트를 시작하면 호스팅 된 서비스도 시작됩니다. –

+0

설명대로, 나는 여전히 같은 오류가 발생합니다. 또한 useLegacySerializerGeneration을 true로 설정해 보았습니다. – xyMingxiang

답변

0

나는 일할 일이 있습니다. 변환 프로세스를 끝내고 세 가지를 다르게 수행했습니다. 먼저 웹 응용 프로그램의 Web.config 파일에있는 어셈블리 섹션의 값을 편집하지 않도록했습니다. 둘째, Microsoft.AspNet.Mvc NuGet 패키지를 클래스 라이브러리가 아닌 웹 응용 프로그램에만 추가해야했습니다. 마지막으로, 필자는 Micosoft.Office.Interop.Excel, Microsoft.AspNet.Mvc 및 EntityFramework와 같이 변경해야하는 참조 만 업데이트했습니다.

Micosoft.Office.Interop.Excel의 경우 VS2015 COM 어셈블리에 대한 참조를 추가했으며 EntityFramework에 대해서는 NuGet 패키지를 설치했습니다. 바라기를 이것은 다른 누군가를 도울 것입니다.

관련 문제