問題タブ [faultcontract]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
3903 参照

wcf - WCF: 多くのメソッドで同じ Faultcontract

たとえば、10 個のサービスと各サービスに 20 個のメソッドがあるプロジェクトを考えてみましょう。

すべてのサービスは、セキュリティ チェックのある基本サービスから継承されます。各メソッドが最初に行うことは、セキュリティ チェックを呼び出すことです。問題がある場合、これによりセキュリティ例外がスローされます。

質問: 各メソッド (OperationContract) で FaultContract を指定する必要がありますか? それとも、中央の定義で一度指定できますか?

0 投票する
1 に答える
625 参照

wcf - フォルト コントラクトを使用してサービスに対して svcutil が失敗する

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

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

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

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

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

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

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

0 投票する
1 に答える
281 参照

wcf - WCF は FaultContracts を自動生成します

私たちは多くの WCF サービスを持っていますが、コントラクトを最初に使用していません。そのため、FaultContracts で指定されていない例外をスローするコードがたくさんあります。

コードを手動で検査する以外。FaultContracts を生成する方法、または少なくとも FaultContract が見つからないときに警告を受け取る方法はありますか?

0 投票する
4 に答える
6141 参照

wcf - WCF : FaultContract(typeof(ExceptionDetail)) の問題

[FaultContract(typeof(ExceptionDetail))]操作コントラクトの属性を入れました。サービスをクライアント アプリケーションに追加しようとすると、次のエラーが発生します -"Custom tool error: Failed to generate code for the service reference 'ServiceReference1'. Please check other error and warning messages for details."

しかし、FaultContract 属性をコメント アウトすると、クライアント アプリに wcf サービス参照を追加できます。

0 投票する
2 に答える
4214 参照

c# - FaultException() サービスによってスローされた例外は、クライアントによってキャッチされません catch(FaultException)

わかりました、私はここで何かが欠けていることを知っています。以下の運用契約を結んでいます。

そして、以下はクライアントから取られます:-

上記の場合、catch(FaultException exp) (クライアント コード内の ArgumentException を持つ最初の catch ブロック) ブロックは実行されません。ただし、ArgumentException を削除して catch(FaultException exp) を指定すると、同じ catch ブロックが実行されます。操作コントラクトから FaultException をスローしているため、これについてはわかりません。ここに何か欠けていますか?

あなたの助けに感謝します、アシッシュ

編集:-クライアントでサービス参照を更新すると、FaultException<ArgumentException>例外をキャッチできました。

0 投票する
2 に答える
738 参照

wcf - WCF障害契約に関するアドバイスを探しています

Webサービス内のさまざまなタイプのエラーを区別できるようにしたい状況があります。APIでは、これは通常、それぞれの個別の例外になります。これは、WCFで複数の障害コントラクトが必要であることを意味しますか?

これは好ましいアプローチですか、それを行うにはOOの方法のようです。私の仕事の誰かがエラーコードを提案しましたが、例外を返送する場合は直感に反しているように思われ始めています。

誰かが同じような状況にあったことがありますか?もしそうなら、あなたはどのような設計上の決定を下しましたか、そしてそれらの理由はありますか?

おかげで、どんな助けでも大歓迎です。ジェイミー

0 投票する
4 に答える
3054 参照

wcf - System.Exceptionを含むカスタムFaultContractオブジェクトを使用すると、「サービス参照の追加」が失敗します

何か特別なことに気づきました。basicHttpBindingを介して公開される内部ストックサービスと、メタデータが有効になっているcustomBinding(http + binary)があります。httpのmexエンドポイントも含めました。VisualStudio2008とVB.NETを使用しています

つい最近、他のプロジェクトでこのサービスへのサービス参照を正常に追加できないことに気付きました。生成されるのは、FaultContractを介して含めた最初のカスタム例外だけでした(実際には、1つのタイプしかありませんでした)。単純なWeb参照を追加すると、それも正しく機能します。また、WcfClient.exeは、サービスのロードにも問題はありませんでした。VS.NET追加サービス参照だけでは機能しません。

サービスでは、この例外はExceptionを継承し、シリアル化可能としてマークされます。それがあなたがすることになっているすべてです、そうではありませんか?

とにかく、これは私を困惑させました。このカスタム例外のFaultContractを削除すると、すべてが正常に機能します。サービス参照を追加できますが、問題ありません。しかし、カスタム例外をまだ持つことができる方法はありますか?これは既知の問題ですか?

0 投票する
1 に答える
1099 参照

silverlight - WCF: OneWay OperationContract での例外処理

Silverlight クライアントと.NET 3.5 WCFサービスを使用してWCF二重サービスを使用しています。

私が持っているシナリオは次のとおりです。サーバーからクライアントへの二重プッシュOneWay操作中に、クライアント通知ハンドラーで例外が発生した場合、チャネルはサイレントに失敗するため、サーバーからのそれ以上の二重呼び出しはタイムアウトして失敗します。(ここで説明されているように 一方向の操作と例外

私の質問:

  1. で装飾しFaultContractOneWay OperationContractクライアントで例外をラップして、チャネルの障害を防ぐことはできますか?
  2. そうでない場合、サーバーからの二重プッシュ中にクライアントで発生した例外をキャッチする他の方法は何でしょうか?
0 投票する
1 に答える
483 参照

c# - WCF: FaultContract と例外階層

私のシステムは 2 つのサイトで構成されており、WCF を使用して相互に通信しています。ときどき、1 つのサイトがそのピアで操作を呼び出したときに例外がスローされることがあります。私は、そのような場合に WCF の FaultContracts を使用する最善の方法を決定しようとしています。

過去のプロジェクトでは、重要な例外階層を作成することに慣れていました。

ただし、WCF でこのような階層を実装するとすぐに面倒になります。それぞれの具体的な例外の種類を独自の FaultContract で指定する必要があるからです。現在、両方のサービスが同じシステムの一部であるため、情報や機密性の高いコールスタックなどの漏洩の問題はありません。A がそれに応じて対応できるように、B には例外でできるだけ多くの情報を提供してもらいたいと考えています。実際には、これらの例外の多くは同じ方法 (操作の失敗とユーザーへの通知) で処理されることに注意してください。ただし、例外スキームを設計するときは、すべての例外に対して同一の処理を想定したくありません。

例外の種類ごとに FaultContract を必要としないアプローチを提案できる人はいますか? もっと簡単な方法はありますか?結局のところ、これは内部インターフェースです。例外階層を使用したいという点で、私は理想主義的すぎますか?

0 投票する
2 に答える
407 参照

wcf - MessageContracts を使用した FaultContract

WCF サービスに MessageContracts を使用しています。さまざまな DataContract を 1 つの MessageContract にグループ化しています。私の基本応答には、isOperationSuccess (bool)、exceptionMessage (Exception) が含まれています。サービス レベルでエラーが発生した場合は、exceptionMessage に割り当て、isOPerationSuccess を false に設定します。そしてレスポンスを返します。

クライアントで FaultContract を処理/キャッチする必要がありますか (私のサービスには FaultContract 属性が含まれていますか?

私の質問は、MessageContracts で FaultContract を使用する必要がある場所はどこですか?