3

Try Catchブロックについて疑問があります。ブロックでエラーが発生すると、ルールに従ってブロックTryにリダイレクトされます。Catchだから私は私のラベルに visible = true をcatch ブロックに設定できますか?

すなわちlblError.visible=true;

コーディング標準に従って正しいですか?私は開発が初めてです。

4

5 に答える 5

2

たとえば、入力要素の可視性を catch ブロックで false に設定し、代わりにエラー パネルを表示することができます。

于 2012-05-17T12:18:48.017 に答える
0

Catchブロックは、tryブロックでスローされたエラーによって与えられたダメージを回復するための開発者を提供します。

したがって、tryブロックにエラーが表示された場合に実行する必要のあるコードを書き留めることができます。すなわちエラーロギング

于 2012-05-17T12:22:55.757 に答える
0

はい、メソッドからでも、catch ブロック内に任意のコードを記述できますreturn。一時finaly{}的に、ブロックを使用して、例外がスローされたメソッドで使用するリソースを解放する必要があります (たとえば、データベース接続を使用します)。

于 2012-10-16T06:41:29.340 に答える
0

そうです、何が問題なのですか?try..catch がコードの多くの場所に表示される可能性があるため、catch ブロックで lblError を表示および設定することに慣れていない可能性があります。

また、catch ブロックから例外をスローし、セッション レベルまたはアプリケーション レベルでそれらすべてを 1 か所で処理して、最後に発生したエラーを取得し、それに応じてユーザー フレンドリーなメッセージを表示できる 1 つのデフォルト エラー ページにリダイレクトすることもできます。

また、web.config で CustomErrors セクションを有効にして、セッションで発生したエラーの特定のページにリダイレクトすることもできます。

try
{
  //statements;
}
catch (Exception ex)
{
  ShowError(ex);
}

void ShowError(Exception ex)
{
   //Log or Email error first
   LogOrEmailError(ex);

   // you can write user friendly message based on the exception provided or a generic error message.
   lblError.Visible = true;
   lblError.Text = GetUserFriendlyErrorMessage(ex); // or throw; if you are planing to handle error in global.ascx or through CustomErrors in web.config
}
于 2012-05-17T12:19:50.463 に答える
0

はい、とても。catch ブロックには通常のコーディング行を記述できます。

于 2012-05-17T12:19:57.313 に答える