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