WS 可靠工作階段
這個範例會示範可靠工作階段的使用方式。 可靠工作階段會支援可信賴傳訊和工作階段。 可信賴傳訊失敗時會重試通訊,而且允許指定傳遞保證,例如訊息依序到達。 工作階段會保持呼叫之間的用戶端狀態。 此範例會實作維持用戶端狀態的工作階段,並且指定依序傳遞保證。
注意: |
---|
這些範例可能已安裝在您的電腦上。 請先檢查下列 (預設) 目錄,然後再繼續。
<InstallDrive>:\WF_WCF_Samples
如果此目錄不存在,請移至用於 .NET Framework 4 的 Windows Communication Foundation (WCF) 與 Windows Workflow Foundation (WF) 範例 (英文),以下載所有 Windows Communication Foundation (WCF) 和 WF 範例。 此範例位於下列目錄。
<InstallDrive>:\WF_WCF_Samples\WCF\Basic\Binding\WS\wsReliableSession
|
這個範例是以實作計算機服務的使用者入門範例為基礎。 可靠工作階段的功能已在用戶端和服務的應用程式組態檔中啟用和設定。
在這個範例中,服務會由網際網路資訊服務 (IIS) 裝載,而用戶端是主控台應用程式 (.exe)。
注意: |
---|
此範例的安裝程序與建置指示位於本主題的結尾。 |
這個範例會使用 wsHttpBinding。 用戶端和服務的組態檔中都會指定繫結。 在端點項目的 binding 屬性中會指定繫結類型,如下列範例組態所示。
<endpoint address=""
binding="wsHttpBinding"
bindingConfiguration="Binding1"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
端點包含參考名為 "Binding1." 之繫結組態的 bindingConfiguration 屬性。 繫結組態會啟用可靠工作階段,方法是將 reliableSession element的 enabled 屬性設定為 true。 已排序工作階段之傳遞保證的控制方式,是將已排序的屬性設定為 true 或 false。 預設值為 true。
<bindings>
<wsHttpBinding>
<binding name="Binding1">
<reliableSession enabled="true" />
</binding>
</wsHttpBinding>
</bindings>
服務實作類別會將 PerSession 執行個體實作成維護每個用戶端的不同類別執行個體,如下列範例程式碼所示。
[ServiceBehavior(InstanceContextMode=InstanceContextMode.PerSession)] public class CalculatorService : ICalculator
{
...
}
當您執行範例時,作業要求和回應會顯示在用戶端主控台視窗中。 在用戶端視窗中按下 ENTER 鍵,即可關閉用戶端。
Add(100,15.99) = 115.99
Subtract(145,76.54) = 68.46
Multiply(9,81.25) = 731.25
Divide(22,7) = 3.14285714285714
Press <ENTER> to terminate client.
若要安裝、建立及執行範例
使用下列命令安裝 ASP.NET 4.0。
%windir%\Microsoft.NET\Framework\v4.0.XXXXX\aspnet_regiis.exe /i /enable
若要建立方案的 C# 或 Visual Basic .NET 版本,請遵循建置 Windows Communication Foundation 範例中的指示進行。
若要在單一或跨電腦的組態中執行本範例,請遵循Running the Windows Communication Foundation Samples中的指示。