2010-04-20 6 views
1

시나리오 : 새로운 원격 서비스를 추가 할 기존 https ASP.NET 사이트가 있습니다. 이 서비스는 사이트의 AJAX 메소드를 통해 호출 할 수 있어야하고 .NET 데스크탑 응용 프로그램을 통해 호출 할 수 있어야하는 계산을 제공합니다.ASP.NET 웹 서비스와 WCF 서비스

이 작업을 수행하기 위해 ASP.NET WebServices (ScriptService 특성으로 표시)를 사용하고있었습니다. 방금 WCF를 발견했습니다.

WCF 서비스가 평범한 이전 .NET 웹 서비스보다 중요한 점은 Message Queue 및 COM +와 같은 다양한 통신 채널을 통해 연결할 수 있다는 것입니다. 나는이 프로젝트에서 일어나는 것을 결코 보지 못한다.

그럼 왜 내가 WCF를 고려해야합니까?

답변

4

WCF는 매우 사용자 정의 가능한 플랫폼을 제공합니다. WCF 스택의 거의 모든 부분을 사용자 지정 구성 요소로 바꿀 수 있습니다. 통신 프로토콜을 변경하는 것은 빙산의 일각에 불과합니다. 이 디자인을 사용하면 ASP.NET 웹 서비스로 쉽게 할 수없는 일을 수행 할 수 있습니다.

예를 들어, 최근에 WCF 서비스 또는 클라이언트에서 요청 - 응답 전송을 수신하고 감사 데이터베이스에 모든 요청을 기록하는 감사 구성 요소를 작성했습니다. WCF는 메시지 인터셉터가 메시지에 액세스하고 XML 인 동안 메시지 인터셉터에 대한 작업을 수행하기위한 확장 점을 제공합니다. 따라서 필자는 원하는 것을 성취하기 위해 약 100 줄의 코드 만 작성했습니다.

WCF를 사용하는 이유는 도구입니다. WCF는 기본적으로 서비스 테스트, 구성 및 진단을위한보다 나은 도구를 제공합니다. 이 외에도 .NET의 서비스를위한 이동 솔루션이기 때문에 WCF 플랫폼을 대상으로하는 많은 도구와 유틸리티가 있습니다.

WCF는 ASP.NET 웹 서비스를 완전히 대체합니다. .NET 서비스의 모든 새로운 작업을 가능한 모든 곳에서 WCF에서 수행해야하는 것이 좋습니다. 기존 프로젝트를 WCF로 마이그레이션해야하는지 여부는 WCF의 이점이 작동하는 솔루션을 대체하는 데 드는 비용보다 큰 부분을 차지해야하는 또 다른 문제입니다.

4

현재 다른 서비스 종점을 추가 할 계획이 아니더라도 가능성이 있다고 판단해서는 안됩니다. 누군가가 길 아래로 무엇을 필요로하는지 알 수 없습니다.

.NET 웹 서비스가 사용자의 요구를 충족시키고 WCF가 추가하는 추가 이점 (쉬운 끝점 교환,보다 긴밀하게 통합 된 표준 보안 등)이 필요하지 않은 경우 두 가지 모두 사용하지 마십시오. .

코드가 작동하고 작업이 완료되면 새로운 기술에 시간을 투자하여 사용하는 것이 중요하지 않습니다. WCF가 실제로 제공하는 기능이 필요할 때까지 WCF를 조사 할 때까지 기다리십시오.

+1

파손되지 않은 경우 반짝 반짝 빛나는 최신 기술로 교체하지 마십시오. +1 –