0

WCF HTTP POST をコーディングしています。以下はサービス コントラクトです。サービスを使用するために使用される URI についてはどうすればよいですか?

  [ServiceContract]
    public interface IService1
    {
        [OperationContract]
        [WebInvoke(UriTemplate = "/JsonData",
                RequestFormat = WebMessageFormat.Json,
                ResponseFormat = WebMessageFormat.Json, Method = "POST")]
        bool SendData(JsonString JsonImage);

        // TODO: Add your service operations here
    }
4

1 に答える 1

0

ほとんどの場合、WCF サービスには、サービス ホストのバインディング、動作、およびエンドポイント要素を定義する構成ファイルがあります。そのため、URL はサービス ベース アドレスと UriTemplate の組み合わせにする必要があります。次の構成ファイルのスニペットは、wcf https レスト サービスの 1 つからの参照サンプルを提供します。

<bindings>
  <webHttpBinding>
    <binding name="RestBinding">
      <security mode="Transport">
        <transport clientCredentialType="None" />
      </security>
    </binding>
  </webHttpBinding>

…</p>

    <behaviors>
      <serviceBehaviors>
        <behavior name="DefaultServiceBehavior">
          <serviceMetadata httpGetEnabled="false" httpsGetEnabled="true" />
          <serviceCredentials>
           …
          </serviceCredentials>
        </behavior>
      </serviceBehaviors>
    </behaviors>

…</p>

 <service name="TestRest">
    <endpoint behaviorConfiguration="RestBehavior" binding="webHttpBinding"
      bindingConfiguration="RestBinding" name="RestServiceEndpoint"
      contract="Test.Rest.Interface" />
    <host>
      <baseAddresses>
        <add baseAddress="http://domain.name.here:18100/" />
      </baseAddresses>
    </host>
  </service>

したがって、URL は次のようになります: http://domain.name.here:18100/JsonData

よろしく、

于 2013-10-25T11:52:05.297 に答える