1

AJAX対応のWCFサービスがあり、すべてがajaxエンドポイントで正常に動作します。次に、AJAXインターフェイスのサブセットである別のインターフェイスに対応する別のwsHttpBindingエンドポイントを追加します(つまり、特定のメソッドのみをWSDLで公開する必要があります)。両方のインターフェースを実装するクラスがありますが、サービスアドレスMyService.svc?wsdlにアクセスすると、両方のサービスに関するメタデータが含まれています。これを行うようにWCFを構成するにはどうすればよいですか?このサービスは、IISのWebサイトアプリケーションでホストされています。

たぶん私は実際には概念を理解しておらず、サービスはインターフェースに対応しているので、2つのインターフェースがある場合は2つのサービス(つまり2つの.svcファイル)があります。

4

1 に答える 1

2

ここでの問題は、WCF が公開する WSDL/MEX エンドポイントが、特定のコントラクトではなく、サービスに関する情報を提供することです。したがって、サービスでサポートされているすべてのコントラクトに関するメタデータを公開します。

確かに、それらを異なる .svc ファイルに分割できます (したがって、複数のサービスのように見えるものを、それぞれが異なるコントラクトで公開します)。

WCF での WSDL 生成が REST のようなサービス (AJAX を含む) にとって有用すぎるとは思いませんでした。また、邪魔になることが多いので、オフにすることもあります。

于 2010-02-09T14:48:25.250 に答える