InlineCode 範例示範如何實作 Internet Information Services (IIS) 所裝載的服務,其中服務程式代碼會內嵌在 .svc 檔案中,並視需要編譯。 服務程式代碼也可以直接在位於應用程式 \App_Code 目錄中的原始碼檔案中實作,或編譯成部署在 \bin 中的元件。 此範例不會示範這些技術。
備註
此範例的設定程式和建置指示位於本主題結尾。
此範例示範一般服務,實作定義要求-回復通訊模式的合約。 服務裝載於 IIS 中,服務程式代碼完全包含在 Service.svc 檔案中。 該服務由第一則傳送到服務的訊息觸發啟動主機並依需求進行編譯。 不需要預先編譯。 服務會實作 ICalculator 合約,如下列程式代碼所定義:
// Define a service contract.
[ServiceContract(Namespace="http://Microsoft.ServiceModel.Samples")]
public interface ICalculator
{
[OperationContract]
double Add(double n1, double n2);
[OperationContract]
double Subtract(double n1, double n2);
[OperationContract]
double Multiply(double n1, double n2);
[OperationContract]
double Divide(double n1, double n2);
}
服務實作會計算並傳回適當的結果。
<%@ServiceHost language=c# Debug="true" Service="Microsoft.ServiceModel.Samples.CalculatorService" %>
// Service class that implements the service contract.
public class CalculatorService : ICalculator
{
public double Add(double n1, double n2)
{
return n1 + n2;
}
public double Subtract(double n1, double n2)
{
return n1 - n2;
}
public double Multiply(double n1, double n2)
{
return n1 * n2;
}
public double Divide(double n1, double n2)
{
return n1 / n2;
}
}
當您執行範例時,作業要求和回應會顯示在用戶端控制台視窗中。 在客戶端視窗中按 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.
要設定、建置和執行範例,請執行以下步驟:
請確定您已針對 Windows Communication Foundation 範例 執行One-Time 安裝程式。
若要建置解決方案的 C# 或 Visual Basic .NET 版本,請遵循建置 Windows Communication Foundation 範例 中中的指示。
建置解決方案之後,請執行 setup.bat 在 IIS 7.0 中設定 ServiceModelSamples 應用程式。 ServiceModelSamples 目錄現在應該會顯示為 IIS 7.0 應用程式。
若要在單一或跨計算機組態中執行範例,請遵循 執行 Windows Communication Foundation 範例中的指示。 如需如何建立可呼叫此服務的用戶端應用程式範例,請參閱 如何:建立用戶端。