Share via


Windows Communication Foundation 정의

응용 프로그램 간 통신을 위한 표준 프로토콜을 포함한 웹 서비스의 전반적인 적용으로 소프트웨어 개발 양상이 변화되었습니다. 예를 들어, 현재 웹 서비스가 제공하는 기능에는 보안, 분산 트랜잭션 코디네이션 및 안정적인 통신이 있습니다. 웹 서비스의 변경에 따른 이점은 개발자가 사용하는 도구 및 기술에 반영되어야 합니다. WCF(Windows Communication Foundation)는 분산 컴퓨터 작업, 광범위한 상호 운용성 및 서비스 지향성과 관련한 직접적인 지원을 위하여 사용하기 간편한 방식을 제공하도록 개발되었습니다.

WCF는 새로운 서비스 기반 프로그래밍 모델을 통해 관련된 응용 프로그램의 개발을 단순화합니다. WCF는 계층화된 아키텍처를 제공하여 다양한 스타일의 분산 응용 프로그램 개발을 지원합니다. 기본적으로 WCF 채널 아키텍처는 비동기식 형식화되지 않은 메시지 전달 형식을 제공합니다. 이와 같은 기반을 바탕으로 안전하고 안정적이며 트랜잭션된 데이터 교환을 위한 프로토콜 기능과 다양한 전송 및 인코딩 옵션이 제공됩니다.

형식화된 프로그래밍 모델(서비스 모델)은 분산 응용 프로그램의 개발을 쉽게 하고, 개발자에게 ASP.NET 웹 서비스, .NET Framework remoting 및 엔터프라이즈 서비스에 대한 전문 지식과 WCF 사용자에게 익숙한 개발 경험을 제공하도록 디자인되었습니다. 서비스 모델의 특징은 Visual C# 또는 Visual Basic과 같은 언어로 서비스 구현에 대한 유연하고 확장 가능한 메시지 매핑을 포함하여 웹 서비스 개념을 .NET Framework CLR(공용 언어 런타임)의 개념에 바로 매핑할 수 있다는 것입니다. 여기에는 느슨한 결합과 버전 관리를 사용할 수 있는 serialization 기능이 포함되어 있으며 통합 및 상호 운용성을 위해 MSMQ(메시지 큐), COM+, ASP.NET 웹 서비스, WSE(Web Services Enhancements) 및 다양한 기타 기능과 같은 기존의 .NET Framework 분산 시스템 기술을 제공합니다.

문제 예

다음 예제에서는 WCF에서 해결할 수 있는 문제를 보여 줍니다. 자동차 렌트 회사에서 차량 예약용 응용 프로그램을 새로 만들기로 결정합니다. 차량 대여 예약 응용 프로그램의 개발자는 응용 프로그램을 구현하는 비즈니스 논리가 회사 내부 및 외부에서 실행 중인 다른 소프트웨어에서 액세스할 수 있어야 한다는 점을 알고 있습니다. 따라서 잘 정의된 서비스 집합을 통해 다른 소프트웨어에 노출된 응용 프로그램의 논리를 사용하여 서비스 기반 스타일로 구축하기로 결정합니다. 이러한 서비스를 구현하여 다른 소프트웨어와 통신하기 위해 새로운 응용 프로그램은 WCF를 사용합니다.

차량 대여 시나리오

수명 기간 동안 차량 대여 예약 응용 프로그램은 다른 응용 프로그램의 범위에 한해 액세스할 수 있습니다. 그러나 차량 대여 예약 응용 프로그램의 설계자는 앞의 그림과 같이 세 가지의 다른 소프트웨어에서 이 프로그램의 비즈니스 논리를 액세스함을 알고 있습니다.

  • 해당 조직의 콜 센터 직원이 사용하는 Windows 데스크톱에서 실행 중인 콜 센터 클라이언트 응용 프로그램. 또한 새로운 예약 시스템에 맞게 생성된 이 응용 프로그램은 Microsoft .NET Framework 및 WCF를 사용하여 구축됩니다. 이 응용 프로그램은 새로운 시스템의 클라이언트로만 수행되기 때문에 새로운 차량 대여 예약 응용 프로그램과 거의 같습니다. 서비스 지향적 관점에서 이 프로그램은 예약 시스템의 비즈니스 논리에 대한 또 다른 클라이언트일 뿐입니다.
  • 비Windows 시스템에서 실행하는 J2EE 서버에 구축된 기존 예약 응용 프로그램. 최근에 다른 자동차 렌트 회사와의 병합으로 인해 이 기존 시스템은 병합된 회사의 고객에게 일관된 서비스 환경을 제공하도록 새로운 응용 프로그램의 논리에 액세스할 수 있어야 합니다.
  • 각각 자동차 렌트 회사와 비즈니스 측면에서 조율된 회사 내에 위치한 다양한 플랫폼에서 실행하는 파트너 응용 프로그램. 파트너에는 여행사, 항공사 및 차량 대여 예약을 하기 위해 필요한 비즈니스 요건을 갖춘 기타 회사가 포함될 수 있습니다.

새로운 차량 대여 예약 응용 프로그램에 대한 다양한 통신 요구 사항은 간단하지 않습니다. 예를 들어, 콜 센터 클라이언트 응용 프로그램과의 상호 작용을 위해 성능이 중요한 반면에, .NET Framework에서 둘 다 구축되기 때문에 상호 운용성은 간단합니다. 그러나 기존 J2EE 기반 예약 응용 프로그램 및 다양한 파트너 응용 프로그램과의 통신의 경우 상호 운용성이 최우선 목표가 됩니다. 또한 보안 요구 사항은 로컬 Windows 기반 응용 프로그램, 다른 운영 체제에서 실행하는 J2EE 기반 응용 프로그램 및 인터넷을 통해 실행되는 다양한 파트너 응용 프로그램에 따라 매우 다릅니다. 트랜잭션 요구 사항도 트랜잭션 요청을 수행할 수 있는 내부 응용 프로그램의 경우에만 다를 수 있습니다. 어떻게 하면 새로운 응용 프로그램 작성자가 복잡한 상황에 빠지지 않고, 이러한 다양한 비즈니스 및 기술 요구 사항을 충족시킬 수 있을까요?

WCF는 이렇게 다양하지만 실질적인 시나리오에 맞게 디자인되었으며 서비스를 노출하고 액세스하는 Windows 응용 프로그램을 위한 기본 기술입니다. 이 항목에서는 WCF에 대해 소개하며, 제공되는 기능과 사용 방법을 보여 줍니다. 이 소개 과정에서 나오는 시나리오는 단지 예제일 뿐입니다. 이러한 예제의 목적은 WCF의 정의를 명확하게 설명하고 해결할 수 있는 문제를 보여 주며, 이러한 문제 해결 방법에 대해 설명하는 것입니다.

문제 해결

새로운 Windows 기반 응용 프로그램의 토대는 .NET Framework입니다. 이에 따라 WCF는 주로 .NET Framework CLR의 최상위에 있는 클래스 집합으로 구현됩니다. 익숙한 환경의 연장이기 때문에 WCF를 사용하면 현재 .NET Framework를 사용하여 개체 지향 응용 프로그램을 작성하는 개발자는 익숙한 방법으로 서비스 지향 응용 프로그램도 구축할 수 있습니다.

WCF 클라이언트 및 서비스 간 통신

클라이언트 및 서비스는 WCF의 기본 메시지 표현 방식인 SOAP를 사용하여 상호 작용하므로, 그림에는 둘 다 WCF에 구축되어 있지만 반드시 그래야 하는 것은 아닙니다. WCF는 .NET Framework 2.0을 기반으로 구축됩니다.

앞서 설명한 시나리오에서 제안한 것처럼 WCF는 응용 프로그램 통신 범위의 문제를 해결합니다. 그러나 다음 세 가지 사항은 WCF의 가장 중요한 측면을 설명합니다.

  • 기존 .NET Framework 통신 기술의 통합.
  • 안정성, 보안 및 트랜잭션을 포함한 공급업체 간 상호 운용성 지원.
  • 명시적 서비스 오리엔테이션.

Microsoft 분산 컴퓨터 작업 기술의 통합.

WCF가 없는 경우 차량 대여 응용 프로그램을 구현하는 개발 팀은 .NET Framework에서 제공하는 여러 선택 사항 중에서 적절한 분산 기술을 선택해야 합니다. 그러나 이 응용 프로그램에 대해 다양한 요구 사항이 있는 경우 단일 기술로는 이러한 요구 사항을 충족하지 못합니다. 대신 응용 프로그램은 다음과 같은 기존의 여러 .NET Framework 기술을 사용할 수 있습니다.

  • ASP.NET 웹 서비스(ASMX). J2EE 기반 기존 예약 응용 프로그램 및 인터넷을 통한 파트너 응용 프로그램과의 통신을 위한 옵션입니다. 기본 웹 서비스가 대부분의 플랫폼에서 지원되는 경우 이 방법은 WCF가 출시되기 전에 공급업체 간 상호 운용성을 실현하기 위한 가장 직접적인 방법이었습니다.
  • .NET Framework remoting. 둘 다 .NET Framework에서 구축되었기 때문에 콜 센터 응용 프로그램과의 통신 옵션입니다. 원격 서비스는 로컬 네트워크에서 응용 프로그램에 대해 불편 없이 간단한 개발 경험을 제공하도록 밀접하게 결합된 .NET 간 통신을 위해 명시적으로 디자인되었습니다.
  • 엔터프라이즈 서비스. 개체 수명 관리 및 분산 트랜잭션 정의를 위해 차량 대여 예약 응용 프로그램에서 사용됩니다. 이러한 기능은 이 시나리오에서 다른 응용 프로그램과의 통신 및 통합 시 유용할 수 있지만 엔터프라이즈 서비스는 제한된 통신 옵션 집합만 지원합니다.
  • WSE. ASMX와 함께 사용하여 J2EE 기반 예약 응용 프로그램 및 파트너 응용 프로그램과 통신할 수 있습니다. 최근에 정의된 웹 서비스 사용권 계약을 구현하기 때문에 통틀어 WS-* 사양으로 알려진 WSE는 관련된 모든 응용 프로그램이 이러한 호환 가능한 버전의 새로운 사양을 지원하는 한 유연한 웹 서비스 보안을 수행할 수 있습니다.
  • MSMQ(Microsoft Message Queuing). 작업량 및 응용 프로그램 수명을 분리할 뿐만 아니라 보장된 데이터 전달이 필요한 Windows 기반 파트너 응용 프로그램과 통신하는 데 사용됩니다. 메시지 큐가 제공하는 지속적인 메시징은 일반적으로 중간에 연결된 응용 프로그램을 위한 가장 좋은 해결 방법입니다.

.NET Framework에 구축된 차량 대여 예약 응용 프로그램은 요구 사항을 충족하기 위해 이러한 통신 기술 중 둘 이상을 사용해야 합니다. 이 방식은 기술적으로는 가능하지만 이 방식으로 작성하는 응용 프로그램은 구현하기 복잡하고 유지 관리하기 어렵습니다.

WCF를 사용하면 훨씬 쉽게 구현할 수 있습니다. 그림에 표시된 것처럼 이전에 설명한 모든 경우에 대해 WCF를 사용할 수 있습니다. 그에 따라 차량 대여 예약 응용 프로그램은 모든 응용 프로그램 간 통신에 대해 이 단일 기술을 사용할 수 있습니다. 다음은 WCF가 이러한 요구 사항을 해결하는 방법을 보여 줍니다.

  • WCF는 웹 서비스를 사용하여 통신할 수 있기 때문에 최신 J2EE 기반 응용 프로그램 서버와 같이 SOAP를 지원하는 다른 플랫폼과의 상호 운용성이 간단합니다.
  • 또한 예를 들어 RSS와 같은 간단한 XML 형식과 같이 SOAP에 기반하지 않는 메시지를 사용하는 웹 서비스와 통신하도록 WCF를 구성하고 확장할 수도 있습니다.
  • 성능은 대부분의 비즈니스에 있어서 중요한 문제입니다. WCF는 Microsoft에서 개발한 가장 빠른 분산 응용 프로그램 플랫폼 중 하나로 개발되었습니다. WCF 및 기타 Microsoft .NET 분산 통신 기술간 높은 수준의 성능 비교에 대해서는 https://go.microsoft.com/fwlink/?LinkId=94274(영문 페이지일 수 있음)를 참조하십시오.
  • 통신하는 두 당사자가 WCF에 구축된 경우 최적의 성능을 구현하기 위해 이 경우에 사용되는 연결 인코딩은 최적화된 이진 버전의 XML 정보 집합입니다. 메시지가 여전히 SOAP 메시지의 데이터 구조를 유지하지만, 해당 인코딩은 XML 1.0 텍스트 인코딩의 표준 꺾쇠 괄호 및 텍스트 형식이 아닌 데이터 구조를 이진 형식으로 표시합니다. 이 옵션을 사용하면 WCF에 구축되고 성능이 중요한 문제이기 때문에 콜 센터 클라이언트 응용 프로그램과 통신하는 데 효과가 있습니다.
  • 개체 수명 관리, 분산 트랜잭션 정의 및 엔터프라이즈 서비스의 기타 항목은 현재 WCF에서 제공합니다. 이러한 기능은 모든 WCF 기반 응용 프로그램에서 사용할 수 있습니다. 따라서 차량 대여 예약 응용 프로그램은 통신하는 다른 모든 응용 프로그램과 함께 이러한 기능을 사용할 수 있습니다.
  • WCF는 다양한 WS-* 사양 집합을 지원하기 때문에 이러한 사양을 지원하는 플랫폼과 통신하는 경우 안정성, 보안 및 트랜잭션을 제공합니다.
  • 메시지 큐에 구축된 대기 중인 메시징의 WCF 옵션을 통해 응용 프로그램은 다른 응용 프로그램 프로그래밍 인터페이스 집합을 사용하지 않고 영구 큐를 사용할 수 있습니다.

이 통합으로 인해 기능이 매우 향상되고 복잡성이 현저히 줄어 듭니다.

다른 기술을 기반으로 구축된 응용 프로그램과의 상호 운용성

WCF는 분산 응용 프로그램에 대한 새로운 개발 환경을 도입하는 동시에 비WCF 응용 프로그램과 원활하게 상호 운용되도록 디자인되었습니다. WCF 상호 운용성과 관련하여 두 가지 중요한 측면은 다른 플랫폼과의 상호 운용성 및 WCF 이전 Microsoft 기술과의 상호 운용성입니다. 다음 단원에서는 이러한 두 가지 경우에 대해 설명합니다.

다른 웹 서비스 플랫폼과의 상호 운용성

오늘날 기업은 일반적으로 몇몇의 공급업체로부터 구입한 시스템과 응용 프로그램을 보유하고 있습니다. 예를 들어, 차량 대여 응용 프로그램의 경우 다양한 언어로 작성되어 있고 다양한 운영 체제에서 실행하는 여러 다른 소프트웨어 응용 프로그램과 통신해야 합니다.

WCF의 기본 통신 메커니즘은 SOAP 기반 웹 서비스이기 때문에 WCF 기반 응용 프로그램은 다양한 컨텍스트에서 실행하는 다른 소프트웨어와 통신할 수 있습니다. WCF에 구축된 응용 프로그램은 다음의 모든 응용 프로그램과 상호 작용할 수 있습니다.

  • 동일한 Windows 시스템의 다른 프로세스에서 실행 중인 WCF 기반 응용 프로그램.
  • 다른 Windows 시스템에서 실행 중인 WCF 기반 응용 프로그램.
  • J2EE 응용 프로그램 서버와 같이 표준 웹 서비스를 지원하는 다른 기술에 구축된 응용 프로그램. 이러한 응용 프로그램은 Windows 시스템 또는 다른 운영 체제를 실행 중인 시스템에서 실행할 수 있습니다.

기본적인 통신 이외의 기능을 수행하려면 WCF¢¯¢¢ç¡§ù¢®© WS-* 사양으로 정의된 웹 서비스 기술을 구현합니다. 이러한 모든 사양은 처음에 Microsoft, IBM 및 함께 협력한 기타 공급업체에 의해 정의되었습니다. 사양이 정착되면서 소유권이 종종 W3C(World Wide Web Consortium) 또는 OASIS(Organization for the Advancement of Structured Information Standards)와 같은 표준 기관으로 이전됩니다. 이러한 사양은 기본 메시징, 보안, 안정성, 트랜잭션 및 서비스 메타데이터를 사용한 작업을 포함하여 여러 영역에 적용됩니다. 자세한 내용은 상호 운용성 및 통합을 참조하십시오. 고급 웹 서비스 사양에 대한 자세한 내용은 https://go.microsoft.com/fwlink/?LinkId=86603을 참조하십시오.

기능별로 그룹화된 이러한 사양은 다음과 같습니다.

  • 메시징: SOAP는 웹 서비스의 기본이며 헤더 및 본문 섹션이 포함된 기본 봉투를 정의합니다. WS-Addressing은 SOAP 메시지 주소를 지정하기 위해 SOAP 헤더에 추가 사항을 정의하며, 이렇게 함으로써 SOAP가 HTTP와 같은 기본 전송 프로토콜에 의존하지 않고 주소 지정 정보를 전달할 수 있습니다. MTOM(Message Transmission Optimization Mechanism)은 XOP(XML-binary Optimized Packaging) 사양에 기반한 대용량 이진 데이터 콘텐츠를 가진 SOAP 메시지에 대해 최적화된 전송 형식을 정의합니다.
  • 메타데이터: WSDL(웹 서비스 기술 언어)은 서비스 및 이러한 서비스를 사용할 수 있는 다양한 방법을 지정하기 위한 표준 언어를 정의합니다. WS-Policy는 기본 보안 옵션과 같이 WSDL로 표현할 수 없는 서비스 동작에 대한 보다 동적인 측면을 지정할 수 있습니다. WS-MetadataExchange를 사용하면 클라이언트가 SOAP를 사용하여 WSDL 및 해당 정책과 같은 서비스에 대한 설명 정보를 직접 요청할 수 있습니다.
  • 보안: WS-Security, WS-SecureConversation, WS-Trust 및 WS-Federation 모두 인증, 데이터 무결성, 데이터 개인 정보 보호 및 기타 보안 기능을 제공하기 위해 SOAP 메시지에 대한 추가 사항을 정의합니다.
  • 안정성: WS-Reliable Messaging은 하나 이상의 웹 서비스 중간 매개자가 이동해야 하는 경우에도 안정적인 종단 간 통신을 수행할 수 있도록 SOAP 헤더에 대한 추가 사항을 정의합니다.
  • 트랜잭션: WS-Coordination에 구축된 WS-Atomic Transaction을 통해 웹 서비스 대화 컨텍스트에서 2단계 커밋 트랜잭션을 조정할 수 있습니다.

차량 대여 예약 응용 프로그램은 이렇게 좀 더 향상된 여러 고급 기술을 사용할 수 있습니다. 예를 들어, WS-Addressing은 .NET Framework 기반 콜 센터 클라이언트 응용 프로그램과 통신하는 경우처럼 HTTP 이외의 전송 메커니즘에서 SOAP를 사용할 때마다 반드시 필요합니다. WCF는 WS-Policy 및 WS-Metadata Exchange를 사용하여 통신하는 시스템이 WCF도 사용하는지 여부 등을 검색합니다. 대부분의 경우 안정적인 통신이 필수이기 때문에 이 시나리오에서 다른 여러 응용 프로그램과 상호 작용하는 데 WS-Reliable Messag징이 사용됩니다. 마찬가지로 이러한 모든 응용 프로그램에서는 무단 액세스 또는 메시지 수정 및 유출을 막기 위해 몇 가지 유형의 보호가 필요하기 때문에, 하나 이상의 응용 프로그램과의 통신 시 보안을 유지하기 위해 WS-Security 및 관련 사양을 사용할 수도 있습니다. 차량 대여 예약 시스템과의 트랜잭션 통합이 필요한 응용 프로그램의 경우 WS-Atomic Transaction이 반드시 필요합니다. 마지막으로, 이진 데이터에 대해 최적화된 연결 형식이 필요할 때마다(예: 보유 차량에 대한 사진의 경우) MTOM을 사용할 수 있으며 양쪽 통신 당사자가 이 옵션을 지원합니다.

WCF가 플랫폼 간 보안, 안정성, 트랜잭션 및 기타 서비스를 통해 상호 운용 가능한 전체 웹 서비스를 구현한다는 것이 중요한 점입니다. 최대 처리량을 제공하기 위해 WCF¢¯Í WCF »çÀÌÀÇ 통신을 상당히 최적화시킬 수 있지만 다른 모든 통신은 표준 웹 서비스 프로토콜을 사용합니다. 실제로 하나의 응용 프로그램이 해당 서비스를 두 가지 유형의 클라이언트에 노출할 수 있습니다.

Microsoft 기술과의 상호 운용성

많은 Microsoft 고객이 WCF에 포함된 .NET Framework 기술에 투자를 많이 하고 있습니다. 이러한 투자를 보호하는 것이 WCF 디자이너의 기본 목표였습니다. WCF를 설치하더라도 기존 기술에 영향을 주지 않기 때문에 조직이 기존 응용 프로그램을 변경할 필요가 없습니다. 그리고 명확한 업그레이드 경로가 제공되고 가능할 때마다 WCF가 이러한 이전 기술과 상호 작용합니다.

예를 들어 WCF 및 ASMX 모두 SOAP를 사용하기 때문에 WCF 기반 응용 프로그램은 ASMX에 구축된 응용 프로그램과 직접 상호 운용할 수 있습니다. 또한 기존 엔터프라이즈 서비스 응용 프로그램을 WCF 인터페이스와 래핑할 수도 있기 때문에 WCF에 구축된 응용 프로그램과 상호 운용할 수 있습니다. WCF의 영구 큐는 MSMQ를 사용하기 때문에 WCF 기반 응용 프로그램은 기본 MSMQ 인터페이스를 사용하여 구축된 비WCF 기반 응용 프로그램과 직접 상호 운용할 수 있습니다. 차량 대여 예약 응용 프로그램의 경우 이러한 이전 기술을 사용하여 구축된 소프트웨어는 새로운 시스템의 WCF 기반 서비스에 직접 연결하여 사용할 수 있습니다.

그러나 상호 운용성이 불가능한 경우도 있습니다. 예를 들어, WSE 1.0 및 WSE 2.0이 WCF와 동일한 WS-* 사양을 일부 구현하더라도 이러한 이전 기술은 이전 버전의 사양을 구현합니다. 버전 3.0의 WSE는 WCF와의 상호 운용성을 수행하지만 이전 버전은 그렇지 않습니다. 상호 운용성에 대한 자세한 내용은 WSE 3.0 웹 서비스를 WCF로 마이그레이션을 참조하십시오.

기타 XML 프로토콜과의 상호 운용성

인터넷의 미래는 예측할 수 없으며 오늘날 사용되는 기술은 발전되거나 교체될 수 있습니다. 오늘날 웹 중심의 응용 프로그램("Web 2.0"이라고 함) 구축 시 추세는 SOAP 기반이 아닌 단일 XML 형식만 사용하는 통신에 기반된 응용 프로그램 모델이며 전송 및 응용 프로그램 프로토콜로 HTTP만 사용합니다. 예를 들어, REST(Representational State Transfer) 아키텍처 스타일의 경우 데이터 취급 시 사용자 정의 작업에 대한 개념이 없습니다. 대신 응용 프로그램 상태는 PUT, POST, DELETE 및 GET과 같이 HTTP URL 및 HTTP 메서드와 관련되어 있습니다. 이러한 접근 방식은 대부분의 개발자가 기업 환경에서 익숙한 사용자 정의 프로시저 또는 기능 작성과 상반됩니다. 그러나 REST 접근 방식은 서비스가 Web 2.0 응용 프로그램의 백 엔드로 작동해야 하는 경우 중요합니다.

REST는 Web 2.0 기술 발전에 대한 한 가지 예일 뿐입니다. 이러한 실험적 프로그래밍 모델 및 표준에 대한 지속적인 재해석과 구체화 환경 속에서 예측할 수 없는 변화에 대응하기 위해서는 WCF¢®¨¡ú ¢®¨¡¢®¨¡ÀÌ 유연성이 필요합니다. 예를 들어, WCF는 SOAP를 기본 구조로 사용하지만 유선 통신에 대해 SOAP를 사용하는 것에 제한을 두지 않습니다. 실제로 WCF는 SOAP 봉투에서 래핑되지 않은 "일반" XML 데이터를 처리하도록 구성될 수 있습니다. 또한 WCF는 ATOM(일반 RSS 표준)과 같은 특정 XML 형식뿐만 아니라 JSON(JavaScript Object Notation)과 같은 비XML 형식도 지원하도록 확장할 수 있습니다. 이러한 유연성으로 인해 현재 작성된 코드는 프로토콜이 변경되거나 교체되더라도 계속 유효합니다. 이렇듯 WCF는 현재는 물론 미래에도 사용할 수 있도록 디자인되었습니다.

참고 항목

참조

System.ServiceModel

개념

기본적인 Windows Communication Foundation 개념
Windows Communication Foundation 아키텍처
설명서에 대한 안내

기타 리소스

지침 및 최선의 방법
초보자를 위한 자습서
기본 WCF 프로그래밍
Windows Communication Foundation Samples