Windows Communication Foundation(WCF)是由微軟開發(fā)的一系列支持數(shù)據(jù)通信的應用程序框架,可以翻譯為Windows 通訊開發(fā)平臺。WCF 整合了原有的windows通訊的 .net Remoting,WebService,Socket的機制,并融合有HTTP和FTP的相關技術。是Windows平臺上開發(fā)分布式應用最佳的實踐方式。
簡單的歸結為四大部分
1>.網(wǎng)絡服務的協(xié)議,即用什么網(wǎng)絡協(xié)議開放客戶端接入。
2>.業(yè)務服務的協(xié)議,即聲明服務提供哪些業(yè)務。
3>.數(shù)據(jù)類型聲明,即對客戶端與服務器端通信的數(shù)據(jù)部分進行一致化。
4>.傳輸安全性相關的定義。
它是.NET框架的一部分,由 .NET Framework3.0 開始引入,與Windows Presentation Foundation及Windows Workflow Foundation并行為新一代 Windows操作系統(tǒng)以及 WinFX 的三個重大應用程序開發(fā)類庫。在 .NET Framework2.0 以及前版本中,微軟發(fā)展了 Web Service(SOAP with HTTP communication),.NET Remoting (TCP/HTTP/Pipeline communication) 以及基礎的 Winsock 等通信支持。由于各個通信方法的設計方法不同,而且彼此之間也有相互的重疊性,對于開發(fā)人員來說,不同的選擇會有不同的程序設計模型,而且必須要重新學習,讓開發(fā)人員在使用中有許多不便。同時,面向服務架構(Service-Oriented Architecture) 也開始盛行于軟件工業(yè)中,因此微軟重新查看了這些通信方法,并設計了一個統(tǒng)一的程序開發(fā)模型,對于數(shù)據(jù)通信提供了最基本最有彈性的支持,這就是 Windows Communication Foundation。