0

enter code here私の wcf サービスはテスト クライアントでは実行されていませんが、ブラウザーを介して実行されており、jquery を介してフェッチしている場合も同様です。

何が問題になる可能性がありますか

エラー: サービスを追加できませんでした。サービス メタデータにアクセスできない場合があります。サービスが実行中で、メタデータを公開していることを確認してください。

  <system.serviceModel>
<behaviors>
  <serviceBehaviors>
    <behavior name="SimpleServiceBehavior">
      <serviceMetadata httpGetEnabled="True" policyVersion="Policy15" />
    </behavior>
  </serviceBehaviors>
</behaviors>
<bindings>
  <webHttpBinding>
    <binding name="webHttpBindingWithJsonP" crossDomainScriptAccessEnabled="true" />
  </webHttpBinding>
</bindings>
<services>
  <service name="WcfService6.Service1">
    <endpoint address="" binding="webHttpBinding"
              bindingConfiguration="webHttpBindingWithJsonP" contract="WcfService6.IService1"
              behaviorConfiguration="webHttpBehavior"/>
    <endpoint contract="IMetadataExchange" binding="mexHttpBinding" address="mex" />
  </service>
</services>

4

2 に答える 2

0

おそらく、HTTP メソッドを使用するように構成された REST Web サービスを使用しています。WCF テスト クライアントは SOAP クライアントであり、機能するには Web サービス メタデータにアクセスする必要があります。

メタデータ構成エントリを Web サービス構成に追加します: http://msdn.microsoft.com/en-us/library/ms788760.aspx

投稿した構成では、2 つの Web サービスが構成されています。別の Web サービスを構成するのではなく、現在の Web サービスでメタデータを有効にする必要があります。

<system.serviceModel>
<behaviors>
  <endpointBehaviors>
    <behavior name="webHttpBehavior" >
      <serviceMetadata httpGetEnabled="True" policyVersion="Policy15" />
      <webHttp />
    </behavior>
  </endpointBehaviors>
</behaviors>
<bindings>
  <webHttpBinding>
    <binding name="webHttpBindingWithJsonP" crossDomainScriptAccessEnabled="true" />
  </webHttpBinding>
</bindings>
<services>
  <service name="WcfService6.Service1">
    <endpoint address="" binding="webHttpBinding"
              bindingConfiguration="webHttpBindingWithJsonP" contract="WcfService6.IService1"
              behaviorConfiguration="webHttpBehavior"/>
      <endpoint contract="IMetadataExchange" binding="mexHttpBinding" address="mex" />
  </service>
</services>

これを読んでください: WCF REST サービスが WCFTestClient に表示されない

于 2013-07-08T09:52:44.347 に答える
0

構成ファイルを使用して、サービスのメタデータ交換を有効にする必要があります。これは ServiceBehavior の下にあります。

<behaviors>
  <serviceBehaviors>
    <behavior name="SimpleServiceBehavior">
      <serviceMetadata httpGetEnabled="True" policyVersion="Policy15" />
    </behavior>
  </serviceBehaviors>
</behaviors> 

次のリンクを試してください

http://msdn.microsoft.com/en-us/library/ms734765.aspx

于 2013-07-08T10:04:27.210 に答える