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