0

HTTPS 上の運用環境 (.NET 4.0、IIS 7.0) で実行されている既存の ASP.NET Web アプリケーションがあります ( https://myapp.comと呼びましょう)。現在、別のサーバーにあるデスクトップ アプリケーションによって消費される新しい WCF サービスをアプリケーションに追加する必要があります。これが私がやったことです:

  1. 既存のプロジェクトのディレクトリ /WebServices に新しい WCF サービス (myService.svc と呼ばれる) を追加します (localhost で正常に動作します)。
  2. 通常どおりウェブサイトを公開します。
  3. 次のように Web サービスを構成web.configします。

構成:

<system.serviceModel>
  <bindings>
    <basicHttpBinding>
      <binding name="TransportSecurity">
        <security mode="Transport">
          <transport clientCredentialType="None"/>
        </security>
      </binding>
    </basicHttpBinding>
  </bindings>

  <services>
    <service name="myService" behaviorConfiguration="myBehavior">
      <endpoint address="https://myapp.com/Webservices/myService.svc" binding="basicHttpBinding"
         bindingConfiguration="TransportSecurity" contract="myService"/>
      <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"/>
    </service>
  </services>

  <behaviors>
    <serviceBehaviors>
      <behavior name="myBehavior">
        <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
        <serviceDebug includeExceptionDetailInFaults="false" />
      </behavior>
    </serviceBehaviors>
  </behaviors>
  <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>

私の心の中で、私は必要なことをすべてやりました。ブラウザでURL を実行すると、https://myapp.com/WebServices/myService.svc「リソースが見つかりません」というメッセージが表示されます。再確認するために、テスト コンソール アプリケーションを作成し、同じ URL を使用して「サービス参照の追加」を試みましたが、検出に失敗しました。

私は何を間違っていますか?私は WCF の初心者であり、この問題に長く悩まされています。

4

0 に答える 0