0

私は3つの層を持っています:

  1. ServiceHandlers (ax2012 と通信し、データをエンティティにマップします)
  2. Services ( getOrder などの serviceHandlers から関数を呼び出して返す)
  3. Winform(または、誰かがUIを設計するためのものであれば何でもかまいません。サービスロジックを使用してそうします)。

私の問題は、ServiceHandlers での例外処理です。EntityNotFoundgetEntity関数が呼び出されて何も見つからないときにスローする独自の例外を実装しました。キャッチしたときに私がすることは、もう一度スローしてサービスでキャッチすることです。

catch ブロック内では、ステートメント throw のみを使用します。..これは、もう一度スローしてから、winformレイヤーのcatchステートメントでキャッチするつもりでした。しかし、アプリケーションがサービスレイヤーで停止し、「EntityNotFoundException」が未処理であると表示されますが、それは winform レイヤーで発生することを望んでいます。

これが理解できることを願っています.. 何か提案はありますか?

4

1 に答える 1

1

まず、ロギングなどの値を追加したり、衣装メ​​ッセージを追加したりしない限り、例外をキャッチして再スローしません。あなたは試すことができます... GUIレイヤーで例外をキャッチして、そこで適切に処理します。

次に、サンプル コードが問題のデバッグに役立ちます。

于 2012-06-07T17:12:18.167 に答える