2009-07-30 4 views

답변

140

서비스 응용 프로그램에는 이미 설정되어있는 웹 사이트 호스트가 포함되어 있습니다. 서비스 라이브러리는 호스트가 참조 및 시작할 수있는 서비스 라이브러리입니다.

서비스 라이브러리로 시작한 경우 (권장) 원하는 모든 호스트 (Windows 서비스, IIS/ASP.NET 또는 콘솔 응용 프로그램)를 선택할 수 있으며 새 라이브러리에서 라이브러리를 참조하기 만하면됩니다 숙주. 서비스 응용 프로그램을 선택하면 호스트가 IIS/ASP.NET으로 만 제한됩니다 (그러나이 용도로는 좋지만 사용할 수있는 프로토콜은 제한됩니다).

편집 : IIS의 변화 내가이 때문에 서비스 응용 프로그램을 선택, ASP.NET 활성화 서비스에 대한 프로토콜보다 다양한 수 있도록 쓴 이후로는 이전보다 제한 훨씬 적다.

+1

누구든지 IIS에서 호스팅 할 때 사용할 수있는 새로운 프로토콜/바인딩에 대한 정보가 있습니까? –

+0

@AndersonImes이 게시물은 오래되었지만 도움을 받기를 바랍니다. 나는 어디에서나 찾고 있었고 WCF 서비스가 .NET 3.5에서 웹 서비스를 대체 할 예정인지, 따라서 .NET 4에서 템플릿이 제거 된 이유를 찾을 수 없습니까? 감사. :) – Chiramisu

+2

@Chiramisu WCF는 더 많은 이점과 유연성을 제공합니다 ...이 매우 도움이되는 것을 발견했습니다 : [Codeproject example] (http://www.codeproject.com/Articles/139787/What-s-the-Difference-between- WCF 및 웹 서비스), [Stackoverflow question] (http://stackoverflow.com/questions/351334/web-service-vs-wcf-service) – Sam

10

당신이 가지고있는 모든 것이 하나의 프로젝트라면, 당신이 그것의 지옥을 위해 분리한다면 단지 복잡성이 더해질 것입니다. Windows 서비스와 IIS에서 모두 호스트해야하는 특정 사용 사례가있을 때 라이브러리를 사용했습니다.

IIS의 경우 클래스 및 인터페이스를 라이브러리로 이동할 수 있지만 .SVC 파일은 웹 프로젝트에 보관할 수 있습니다. 적절한 클래스를 가리 키도록 .SVC 파일을 편집해야합니다.