首頁
1
商品介紹
2
WCF (Windows Communication Foundation)參考服務應用3
https://www.tivis.com.tw/ 東鄉工業有限公司
首頁 服務介紹 資料整合 WCF (Windows Communication Foundation)參考服務應用
7

WCF (Windows Communication Foundation)參考服務應用

工業控制中,不論是PLC , PC Base , AOI 以及邊緣運算裝置
最後都需將結果及圖片上傳 Data Base 並提供給CLIENT 端
而以Windows Communication Foundation (WCF)或者
Application Program Interface(API) 所提供的Web Servi

WCF 簡介

Windows Communication Foundation (WCF) 是用於建置服務導向(SOA)的應用程式架構。 使用 WCF,您可以在各個服務端點(Endpoin)之間傳送訊息資料。

  • WCF 透過全新的服務導向程式設計模型,簡化所連接應用程式的開發。
  • WCF 以提供分層架構的方式支援分散式應用程式開發的多種樣式。
  • WCF 通道架構在其基底上提供非同步、無類型的訊息傳遞基本。
  • WCF 可以用來進行安全、可靠、交易的資料交換。

每一個 WCF 端點可分成:服務端點用戶端點。 服務端點可能裝載在 IIS 上頭,也可以裝載在一般應用程式之中。 用戶端點則大致是某項服務的用戶端,會向服務端點要求資料。 而中間傳送的訊息可以是簡單的單一字元或以 XML 傳送的字組,或者像二進位資料的資料流這般複雜的形式都可以。

傳訊和端點(Messaging and Endpoints)

Messaging

WCF 以訊息通訊的概念為基礎,只要是可以模型化為訊息的項目 (例如 HTTP 要求或訊息佇列 (MSMQ) 訊息) 都能在程式設計模型中以制式方式表示。 如此一來,不同傳輸機制上就可以有統一的 API。

此模型區別「用戶端」(Client) 和「服務」(Service)。 前者是啟始通訊的應用程式,後者是等待與用戶端進行通訊並回應通訊的應用程式。 單一應用程式可以同時做為用戶端服務

Endpoint

不管是用戶端服務端都必須提供「端點」(Endpoint),以便讓 WCF 的訊息可以在端點之間傳送。 「端點」裡頭定義了訊息交換所需要的相關資訊,也就是被稱為 WCF 的 ABCs 三要素:address、binding、contract。 如此一來,只要用戶端和服務端的端點設定都相同,.NET 平台的底層就知道如何進行溝通,不需要為發佈服務元件或者繫結務元件而開發一堆程式碼。

  1. 服務的存取位置(Address) :
    Address 是用來描述服務的位置,每個服務端點都有一個唯一的位置,以 URI (Uniform Resource Identifier) 格式表示。 例如: http://xxx.xxx.xxx/MathService 。 因此,假如該服務同時提供多個端點,你就必須使用不同的通訊協定或者使用不同的通訊埠來區分。
  2. 服務的繫結方式(Binding) :
    Binding 是用來描述訊息傳遞的通訊協定。 例如:HTTP, TCP, MSMQ, Binary HTTP 等等。
  3. 服務的合約內容(Contract) :
    Contact 是用來表達這個服務的公開定義或介面,也就是用來描述服務提供的內容。 在 WCF 中,有多種合約型別(contract type),例如:service contract, operation contract, message contract, fault contract , and data contract。 這些合約定義是用來讓用戶端知道該如何叫用服務以及該傳送什麼格式的訊息。

裝載與叫用(Hosting and Calling)

裝載 (Host)

定義好 WCF 服務,且設定好端點之後,必須再將服務裝載起來,才可以開始執行服務。 例如裝載在 IIS、WAS、COM+、Windows Service、Windows AP、Console AP 等等。

裝載好的 WCF 服務會提供一個或多個端點,並將這些資訊公開成中繼資料,讓用戶端可以用來處理以產生相容的 WCF 用戶端和通訊堆疊。

叫用 WCF 服務

要叫用 WCF 服務,用戶端必須依據該服務所公開的中繼資料,先建立與服務端點相容的用戶端點。 該用戶端點必須指明服務位置通訊協定訊息格式。 再將需求送交給服務,WCF 服務處理完需求後便回傳結果。

WCF 架構

WCF 是由多個層合力提供功能選項以建置服務導向的應用程式。共分四個層:

  • Contract layer
  • Runtime layer
  • Messaging layer
  • Hosting layer

下圖說明 Windows Communication Foundation (WCF) 架構的各主要層。




1381275