- - PR -
Exceptionでハンドルされない場合は?
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2008-10-31 17:46
.NET初心者なので情報が足りないかもしれませんが・・・
フレームからASPを表示してるのですが Page_Loadメソッドでエラー処理がアプリケーションエラーになってしまいます。 ************************************************************* (「型(a)の例外が(b)で発生しましたが、ユーザコードないではハンドルされませんでした」 追加情報:(c)) ************************************************************* Page_Loadメソッドは・・・ TRY Throw New ApplicationException((c) Catch ex As Exception Throw ex <---ここで上記のエラーが発生します。 End Try どのような原因があるのでしょうか? | ||||||||||||
|
投稿日時: 2008-10-31 18:29
Throwして、それを受け取っているところがないのが原因だと思います。
なんでそこでThrowしてるんでしょう。 | ||||||||||||
|
投稿日時: 2008-10-31 19:44
| ||||||||||||
|
投稿日時: 2008-11-04 15:52
返信が遅くなりました。。
>Jittaさん キャッチをしたいのではなくエラーを呼び出ししてる上位に戻したいので 二重にしてもエラーは発生しちゃいました。 >どっとねっとふぁんさん 共通のエラー処理をするためにThrowしてエラーを発生させてます。 もうちょい調べてみます。 ご意見ありがとうございました。 | ||||||||||||
|
投稿日時: 2008-11-04 16:42
> キャッチをしたいのではなくエラーを呼び出ししてる上位に戻したいので
上位で受け取れてないだけでしょう。 なんかプログラムがまずいんだと思いますよ。 | ||||||||||||
|
投稿日時: 2008-11-04 16:44
エラーを呼び出している上位とは何でしょうか。 関数を呼び出している上位と言うことでしょうか。 Page_Load を呼び出しているとなると 親クラスでオーバーライドしている関数の事でしょうか。 どれにしろ上位の関数でキャッチしたいのであれば Tray-Catch する必要も Throw する必要も無いのではないでしょうか。 | ||||||||||||
|
投稿日時: 2008-11-04 19:00
VB6 でいうところの、
On Error Resume Next がしたいとか? だったら無理です。 | ||||||||||||
|
投稿日時: 2008-11-04 20:59
"上位" と仰っているのに加え、自ら throw しているのでそれはないと思います。 どっとねっとふぁんさんの仰るとおり、ご本人が "上位" といっている部分の制御構造 (catch 句) が正しくないか、そもそも "上位" そのもの (言葉の定義) 自体が誤っているかだと思います。
Page_Load イベントと仮定するとして、その上位とは...?
お探しのものは Application_Error イベントだったりしないでしょうか。 "共通のエラー処理" というのがどの単位で共通なのかがわかりませんので、この回答は的外れかもしれません。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 |