WCF テスト クライアントに問題があります。次のエラーが発生し続けるため、WebService に接続できません。
エラー: http://xxx.xxxxxxxx.xxx/DPITerminal.svcからメタデータを取得できません。 これがアクセス権のある Windows (R) Communication Foundation サービスである場合は、指定されたアドレスでのメタデータ公開が有効になっていることを確認してください。メタデータの公開を有効にする方法については、http: //go.microsoft.com/fwlink/ ?LinkId=65455.WS-Metadata Exchange Error URI: http://xxx.xxxxxxxx.xxx/DPITerminal.svcにある MSDN ドキュメントを参照して ください。
メタデータに解決できない参照が含まれています: 'http://xxx.xxxxxxxx.xxx/DPITerminal.svc'。コンテンツ タイプ application/soap+xml; charset=utf-8 はサービス http://xxx.xxxxxxxx.xxx/DPITerminal.svcでサポートされていませんでした. クライアントとサービスのバインディングが一致していない可能性があります。リモート サーバーがエラーを返しました: (415) コンテンツ タイプが 'application/soap+xml; であるため、メッセージを処理できません。charset=utf-8' は予期されたタイプの 'text/xml ではありませんでした。charset=utf-8'..HTTP GET エラー URI: http://xxx.xxxxxxxx.xxx/DPITerminal.svc 「http://xxx.xxxxxxxx.xxx/DPITerminal.svc」のダウンロード中にエラーが発生しました。
これが私の Web.Config: Linkです。
ご覧のとおり、私はすでに
<serviceMetadata httpGetEnabled="true" />
としても
<endpoint address="mex" binding="mexHttpBinding" bindingConfiguration="mex" contract="IMetadataExchange" />
他の StackOverflow の質問で提案されているように。それでもうまくいきません。
次のエンドポイントにコメントすると、次のことにも気付きました。
<endpoint address="x" behaviorConfiguration="poxBehavior" binding="webHttpBinding" bindingConfiguration="web" contract="xxx.xxxxxxxx.xxxxxx.WebService.IDPITerminal" />
すべてが期待どおりに機能します。XML エンドポイントに問題があると思いますか? XML エンドポイントが JSON エンドポイントのバインディング構成を共有しており、JSON エンドポイントには問題がないため、これは奇妙です。
また、私が問題を抱えているのは WCF テスト クライアントだけであることを明確にさせてください。JSON と XML エンドポイントはどちらも正常に動作しています。
編集:
XML エンドポイントにコメントを付けて公開し、WCF テスト クライアント経由で接続しようとしました。次に、XML エンドポイントのコメントを外して、再公開します。WCF テスト クライアントは引き続き動作します。つまり、データを送受信できます。サービスを更新すると、メタデータを取得できませんというエラーが再び表示されました。