2

次のような独自のクラスを作成しました。

[DataContract]
public class MyOperationFault : ExceptionDetail
{


    /// <summary>
    /// Contructor
    /// </summary>
    /// <param name="ex"></param>
    public MyOperationFault(Exception ex) : base(ex)
    {
    }
}

次に、私の wcf サービス インターフェイスは次のようになります。

   [OpearationContract()]
   [FaultContract(typeof(MyOperationFault))]
   void DoWork();

これで、すべてが開発環境で期待どおりに機能します-私が上げたときFaultException:

   throw new FaultException<MyOperationFault>(new MyOperationFault(new Exception("Failed")));

クライアント側で問題なく引っ掛かります。

ツールを使用してサービスをテストするために移動すると、問題が発生しwcftestclient.exeます。このエラーが発生しています:

サービスの追加に失敗しました。サービス メタデータにアクセスできない場合があります。サービスが実行中で、メタデータを公開していることを確認してください。 エラー: http://localhost:33620/MyService.svcからメタデータを取得できませんこれがアクセス権のある Windows (R) Communication Foundation サービスである場合は、指定されたアドレスでのメタデータ公開が有効になっていることを確認してください。メタデータの公開を有効にする方法については、http: //go.microsoft.com/fwlink/ ?LinkId=65455.WS-Metadata Exchange Error URI: http://localhost:33620/MyService.svc メタデータに含まれる MSDN ドキュメントを参照して ください。解決できない参照: ' http://localhost:33620/MyService.svc '。に接続できませんでした http://localhost:33620/MyService.svc。TCP エラー コード 10061: ターゲット マシンがアクティブに拒否したため、接続できませんでした 127.0.0.1:33620。リモート サーバーに接続できません ターゲット マシンがアクティブに拒否したため、接続できませんでした 127.0.0.1:33620

[FaultContract(typeof(MyOperationFault))] サービスのメソッドからをコメントアウトするとすぐに、wcftestclient問題なく動作し始めます。これに取り組む方法は?

4

1 に答える 1