2012-06-28 4 views
3

현재 WCF 서비스 (물론 클라이언트 응용 프로그램과 함께)로 구현해야하는 프로젝트에서 작업 중입니다.자체 호스팅에서 Windows 서비스 호스팅으로의 WCF 호스팅 용이성

또한 프로젝트는 서비스와 DB 간의 ORM 계층으로 Entity Framework (코드 - 첫 번째 접근)를 사용해야합니다.

결국이 서비스는 Windows 서비스로 호스팅되어야합니다. 처음에 자체 호스팅을 사용하고 Windows 서비스 호스팅으로 전환 할 수 있다면 궁금합니다. 수동으로 파일과 코드를 복사하지 않고도 Visual Studio를 전환하는 것이 얼마나 쉬운가요?

감사

+0

Windows 서비스에서 호스팅 _ 자체 _ 호스팅. 다른 점이 없다. –

+0

다음 두 가지의 차이점은 무엇입니까? http://msdn.microsoft.com/en-us/library/ms733069.aspx 및 http://msdn.microsoft.com/en-us/library/ms731758.aspx? –

+0

소문자 서비스는 대문자 서비스와 다릅니다 (나에게). 첫 번째 링크는 Windows 서비스 (관리 도구에서와 같이)입니다. .exe의 두 번째 링크 호스트. 이것이 데이터 서비스가 될 것이라면 일반적으로 IIS에서 호스팅됩니다. 내가 귀하의 질문을 완전히 이해하지 못하기 때문에 의견 만 남깁니다. – Paparazzi

답변

4

서비스없이 호스팅 로직을 포함하는 "XXXServiceLibrary"프로젝트 (DLL)를 만듭니다. 서비스와 모든 논리를 구현하십시오.

당신이 아직 호스팅에 대한 걱정 만이 아닌 서비스에 집중하는 동안, 당신은 아래의 호스트 중 하나를 사용할 수 있습니다

  • WCFServiceHost (http://msdn.microsoft.com/en-를 우리/라이브러리/bb552363.aspx)
  • IIS/WAS는 (웹 프로젝트 XXXIISServiceHost을 만들고, 호스팅 서비스에 대한 Web.config에서 필요한 설정을 입력합니다. 당신은 또한 단순함에 대한 파일)
  • 를 SVC는 사용할 수 있습니다 간단한 콘솔 응용 프로그램 XXXConsoleServieHost, 그리고 수동으로 자기 호스팅 논리를 작성하십시오. 그러나 서비스에 특별한 호스팅 로직이 필요하지 않은 경우 두 가지 옵션 중 하나를 사용하십시오.

서비스 개발 및 테스트가 완료되면 XXXWinSvcServiceHost 프로젝트 (Windows 서비스)를 만들고 호스팅 논리를 구현하십시오.

가져 가십시오. 호스팅 프로젝트와 서비스 라이브러리를 분리하십시오. 그리고 네, 한 호스트에서 다른 호스트로 이동하는 것은 매우 쉽고 간단합니다. 대부분의 경우 구성 작업을 반복하지 않아도됩니다. 그냥 복사 해.

+0

감사합니다. Moussa. 나는 WCFServiceHost와 함께 개발 중에 갈 것이라고 생각한다. –

+0

좋은 선택. 나는 언급하는 것을 잊었다. Visual Studio에서 "wcf 서비스 라이브러리"프로젝트 유형을 만들면 WCFServiceHost가 통합되어 프로젝트를 "시작할"수 있습니다. Visual Studio에서 직접 설정할 수도 있습니다. 아직 프로젝트가 시작될 때 wcftestclient를 시작할 수도 있습니다. 참조 : http://blogs.msdn.com/b/wcftoolsteamblog/archive/2010/01/04/tips-for-launching-wcf-test-client.aspx – xtrem

+0

대단히 감사합니다. –

관련 문제