- - PR -
catch句内の例外処理
1|2|3
次のページへ»
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-04-10 17:31
はじめて投稿させていただきます、MGSです。
例外処理についてお知恵を拝借したいのです。 例のようなケースで例外発生時にcatch句の中で後処理のようなことを したときに再度例外が発生した場合通常どのように処理するのでしょうか? 条件は ・自作のライブラリ内で呼び元に例外情報を返したい 何もしないと最後に発生した例外が呼び元で処理されますが最初の例外情報も 返さないといけないかなぁと思うのですがこのようなケースは皆さんどのように 処理されていますか?
よろしくお願いします。 | ||||||||
|
投稿日時: 2006-04-10 17:38
私の場合、今回の例ですと例外機構を設けません。 Catch 句内は Rollback のみで、Application.ThreadException 逝きですね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-04-10 17:54
私は、 例外は、むやみにキャッチしちゃダメよ で勉強させていただきました。 | ||||||||
|
投稿日時: 2006-04-10 18:21
早速の回答ありがとうございます!
#席をはずしているうちにレスがついて驚いています。
何もしないってのもありですか〜 そうすると今回の例だと「exSecond」の情報のみApplication.ThreadExceptionで catchできて「exFirst」はできないと思うのですがそれは仕方ないということでしょうか? 的外れなことをいってるかもしれませんがご教授ください。 よろしくお願いします。 | ||||||||
|
投稿日時: 2006-04-10 18:38
しかるべき処置中に例外になっては、どのみち続行不可能だと思うのですが... あくまで例であり処置が考えうるというのであれば、入れ子にすれば良いんじゃないでしょうか。
これは、どの例外で起きたのか判別さえできれば良いということでしょうか。 例外を「返す」というのに、少し違和感を感じているので、読み違えているかもしれません。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-04-10 19:07
最初の書き方がまずかったですね。。。 ライブラリをコールしている箇所ではtry-catchで例外をcatchして catchした情報を元にメッセージ表示やログに残す ようにしたいので、 自作ライブラリで例のように複数例外が発生した場合に呼び元に 複数例外が発生したことを伝えないといけないか? ということを考えていました。メッセージはともかくログには発生した例外を 全部残すべきなのかな?と思いまして。 そんなことをいろいろ考えていて通常どうするのかなぁと思いました。 ・最後の例外だけでいい ・全部伝えないとダメ ・根本的に何か違う たびたびすみませんがよろしくお願いします。 | ||||||||
|
投稿日時: 2006-04-10 19:27
なんか根本的にちがってるような気がする。(あくまで気がする)
ログをどうやってるのかわかんないけど、例外が発生した時点で書けばいいんでないの? ロギングって何をつかってる? InnerExceptionに詰め込んでお持ち帰りするのも手かもしれんけど邪道っぽい。 | ||||||||
|
投稿日時: 2006-04-10 20:18
回答ありがとうございます。
ログの実装はまだなのです・・・何らかの方法でファイルに書こうとは思っているのですが。 例外が発生した時点で書くのがいいのかもしれませんね。 呼び元で「一回だけメッセージを表示する」ことにこだわりすぎてました。 |
1|2|3
次のページへ»