1

私たちは、しばらくの間開発してきた WCF 自己ホスト型サービスを持っています。標準の一部として、操作に適用する FaultContract を定義しました。

最近、新しい ServiceContract を追加する必要があったので、それを行い、それに単純なメソッド (void/no params) を追加しました。このコントラクトを追加すると、SVCUtil はプロキシを生成しなくなります。代わりに、エラーが発生し、メタデータに解決できない参照が含まれていると表示されます: 'net.tcp://localhost/MyService'

最後に、操作コントラクトに faultcontract があることをデバッグしました。削除するとすぐに、すべてが正常に機能します。これは私たちにとって非常に奇妙です..

1) 新しいサービス契約は、他のすべてのサービス契約と同じ場所にあります。

2) サービス コントラクトの実装者は、他のすべてのサービス コントラクトの実装者と同じです (質問しないでください)。

3) FaultContract は、他の場所で使用するものと同じです。

この奇妙な動作の原因について何か考えはありますか?

4

1 に答える 1

2

FaultContractsの障害ではないことが判明しました。代わりに、mexにnetTcpバインディングを使用することに問題があります。特定の数のメソッドに到達すると、それは機能しなくなります。解決策は、httpバインディングに切り替えることでした。

于 2009-09-25T16:15:05.983 に答える