34 個のメソッドを公開している WCF サービスがあります。今日までメタデータ交換MetadataExchangeClient
は問題なく機能していましたが、突然次の例外が発生し始めました。
メタデータに解決できない参照が含まれています: http://localhost:1150/service.svc?wsdl=wsdl0
最も「興味深い」ことは、サービス コントラクトのメソッドの一部 (どのメソッドであっても) をコメントアウトして、サービスが公開するメソッドを少なくすると、メタデータを適切に取得できることです。設定はweb.config
読み取ります
<system.serviceModel>
<services>
<service name="(...)" serviceBehavior="(...)">
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="(...)"><serviceMetadata httpGetEnabled="True"></behavior>
<serviceBehaviors>
</behaviors>
すべての名前は名前空間で修飾されており、たとえば 15 個のメソッドを公開している間、すべてがうまく機能します。もっと公開しようとするときはいつでも、どれを公開しようとしても、その例外が発生します。私は何を間違っていますか?