14

開発マシンの IIS Express で現在実行されているwebHttpBindingを使用して、新しい IIS ホスト WCF サービスを作成しました。「サービス参照の追加」を試みると、サービスは正しく構築され、Reference.cs ファイルは正常に見えますが、Web .config または app.config ファイルが更新されていません。

警告やエラー メッセージは表示されません。

サービスとクライアントの両方が .Net 4.5 をターゲットにしています。

サービス構成

  <system.serviceModel>
    <bindings>
      <webHttpBinding>
        <binding name="webInteropSecureBinding" allowCookies="false" maxBufferPoolSize="2097152" maxBufferSize="2097152" maxReceivedMessageSize="2097152">
          <security mode="Transport" />
        </binding>
      </webHttpBinding>
    </bindings>
    <services>
      <service name="PsmDataProvider.PsmProvider" behaviorConfiguration="SecureRest">
        <clear />
        <endpoint address="" binding="webHttpBinding" bindingConfiguration="webInteropSecureBinding" name="PsmProvider" contract="PsmDataProvider.IPsmProvider" listenUriMode="Explicit" behaviorConfiguration="webHttpBehavior" />
        <endpoint address="mex" binding="mexHttpsBinding" name="mex" contract="IMetadataExchange" listenUriMode="Explicit" />
        <host>
          <baseAddresses>
            <add baseAddress="https://localhost:44300/PsmProvider/" />
          </baseAddresses>
        </host>
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="SecureRest">
          <serviceMetadata httpGetEnabled="false" httpsGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="true" />
        </behavior>
      </serviceBehaviors>
      <endpointBehaviors>
        <behavior name="webHttpBehavior">
          <webHttp />
        </behavior>
      </endpointBehaviors>
    </behaviors>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
  </system.serviceModel>

クライアント構成

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>
</configuration>

クライアント サービス リファレンス

ここに画像の説明を入力

いくつかの調査の後、これらのStackOverflowの質問が見つかりました

質問1

質問2

質問 3

そして、この投稿

ブログ投稿

上記のそれぞれは、私が行った「参照アセンブリで型を再利用する」フラグのチェックを外すという同じ問題を指しています。

ここに画像の説明を入力

問題は、問題が修正されなかったことです。サービス参照の更新、削除、および再作成を試みましたが、構成ファイルは更新されません。

質問

これはサーバー側の構成に問題がありますか? それともクライアント側の問題ですか?プロキシ生成が期待どおりに機能するように変更するにはどうすればよいですか?

4

4 に答える 4

0

今日もVS2012で同じ問題が発生しました。

テスト、本番前、および本番用の一連のweb.config構成があり、「プレビュー変換」を使用でき、VS2012関連する設定で「web.config」にパッチを適用していることを確認できます..

プレビュー

...しかし...デプロイすると、デフォルトの「web.config」ファイルが変更されていないように見えました。

原因は、VS2012 が構成を台無しにしたようで、発行ダイアログで突然、PreProduction 構成がデバッグに関連付けられたことが原因でした。は ?

公開

これを「Debug」から「PreProduction」に変更すると、問題が修正されました。

または、少なくとも、それは私を一歩前進させましたが、VS2012 が展開しようとすると構成名が台無しになるという問題がまだあります。

配備

(落ち込んでため息。)

現在VS2013をダウンロード中。うまくいけば、このリリースでバグが少なくなります。

于 2014-02-19T07:56:00.730 に答える
0

ファイルから削除maxBufferPoolSize="2097152" maxBufferSize="2097152"しますweb.config。次に、サービスの更新を試みます。バインディングが正しく記述されていることを確認してください。

于 2013-08-21T06:31:49.640 に答える