以組態為基礎的啟動
此範例示範如何在不需要 .svc 檔案的情況下啟動 Windows Communication Foundation (WCF) 服務。
注意: |
---|
這些範例可能已安裝在您的電腦上。 請先檢查下列 (預設) 目錄,然後再繼續。
<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\Services\Hosting\ConfigBasedActivation
|
範例詳細資料
在這個範例中,用戶端是 WCF 的測試用戶端,而服務是裝載在 IIS 中。
注意: |
---|
此範例的安裝與建立指示位於本主題的結尾。 |
在不需要 .svc 檔案的情況下啟動服務
在 .NET Framework 3.5 中,啟動服務需要 .svc 檔案。 這會造成額外的管理負荷,因為需要額外的檔案才能與應用程式一起進行部署和維護。 使用 .NET Framework 版本 4 版時,可以使用應用程式組態檔設定啟動元件。
.NET Framework 4 在應用程式組態檔的 ServiceHostingEnvironmentSection 中導入新的組態項目 (ServiceActivationElement)。 ServiceHostingEnvironmentSection 集合會接受一組要啟動的服務,如下列程式碼範例所示。
<serviceActivations>
<add relativeAddress="Calculator.svc" service="Microsoft.ServiceModel.Samples.CalculatorService" />
<serviceActivations>
結果是,此組態看起來非常類似 .svc 檔案的組態。 所導入的其他屬性為提供服務位址的 relativeAddress
。 相對位址也就是服務的虛擬路徑。 主機會從 virtualPath
位置擷取檔案的 Web.config 檔 (如果存在),否則,主機會以遞迴方搜尋其上層資料夾。
注意: |
---|
此範例需要裝載在 IIS 中才能運作。 |
若要使用這個範例
使用 Visual Studio 2010 開啟 Service.csproj 檔案。
若要建立方案,請按下 F6。
執行 WCFTestClient.exe 來測試服務。
使用 [Windows 檔案總管] 瀏覽到 %SystemDrive%\Program Files\Microsoft Visual Studio 10.0\Common7\IDE 資料夾。
執行 WcfTestClient.exe。
設定服務的 MEX 位址。
按下 CTRL+SHIFT+A 來設定服務位址。
將位址設定為 https://localhost/ServiceModelSamples/Calculator.svc。
執行
Add
作業。 將n1
參數的值設定為 10,並將n2
參數的值設定為 15。按下 [叫用]。
預期的結果為 25。
若要安裝、建立及執行範例
若要建立方案的 C# 或 Visual Basic .NET 版本,請遵循建置 Windows Communication Foundation 範例中的指示進行。
在建立方案後,執行 Setup.bat 以便在 IIS 中安裝 ServiceModelSamples 應用程式。 ServiceModelSamples 目錄現在應該會顯示為 IIS 應用程式。
若要在單一或跨機器的組態中執行本範例,請遵循Running the Windows Communication Foundation Samples中的指示進行。