ConfigSimplificationIn40 サンプルでは、Windows Communication Foundation (WCF) を使用して一般的なサービスとクライアントを実装および構成する方法を示します。 このサンプルは、他のすべての基本的なテクノロジ サンプルの基礎です。
このサービスは、サービスと通信するためのエンドポイントを公開し、.NET Framework 4 の簡略化された構成を使用します。 .NET Framework 4 より前では、次の構成コード例に示すように、通常、エンドポイントは構成ファイル (Web.config) で定義されています。
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright ©) Microsoft Corporation. All Rights Reserved. -->
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="CalculatorServiceBehavior">
<serviceMetadata httpGetEnabled="True"/>
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service name="Microsoft.Samples.GettingStarted.CalculatorService"
behaviorConfiguration="CalculatorServiceBehavior">
<endpoint address="" binding="basicHttpBinding" contract="ICalculator"/>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
</service>
</services>
</system.serviceModel>
</configuration>
.NET Framework 4 では、 <service>
要素は省略可能です。 サービスでエンドポイントが定義されていない場合、実装された各ベース アドレスとコントラクトのエンドポイントがサービスに追加されます。 ベース アドレスがコントラクト名に追加され、エンドポイントが決定され、バインディングはアドレス スキームによって決定されます。 次のコード例は、簡略化された構成ファイルを示しています。 構成されている場合、同じコンピューター上のクライアントが http://localhost/servicemodelsamples/service.svc
でサービスにアクセスできます。 リモート コンピューター上のクライアントがサービスにアクセスするには、localhost の代わりに完全修飾ドメイン名を指定する必要があります。 既定では、サービスはメタデータを公開しません。 そのため、サービスは ServiceMetadataBehavior 動作をオンにします。
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright © Microsoft Corporation. All Rights Reserved. -->
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="">
<serviceMetadata httpGetEnabled="True"/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
このサンプルを使用するには
Windows Communication Foundation サンプル のOne-Time セットアップ手順を実行していることを確認します。
ソリューションをビルドするには、「 Windows Communication Foundation サンプルのビルド」の手順に従います。
次の手順に従ってサンプルを実行します。
サービス プロジェクトを右クリックし、[スタートアップ プロジェクトとして設定] を選択し、+F5 キーを押します。
サービスが稼働していることを確認するコンソール出力を待ちます。
クライアント プロジェクトを右クリックし、[スタートアップ プロジェクトとして設定] を選択し、Ctrl+キーを押します。