0

データベースに接続された asp gridview の従来のエラー ページではなく、カスタム エラー ページを設定したいと考えています。たとえば、いくつかの依存関係 (外部キー) を持つオブジェクトを削除しようとすると、ユーザーにわかりやすいメッセージを表示したいと考えています。

ご協力ありがとうございました。

4

2 に答える 2

1

問題のあるコードをキャッチする場所がない場合は、未処理の例外が発生するたびに特定のページを表示する asp.net のカスタム エラー ページを使用することをお勧めします。カスタム エラーを有効にするには、次のセクションを web.config ファイルに追加します。

<customErrors mode="On" defaultRedirect="~/Error/Error.aspx">
</customErrors>

カスタム エラーの詳細については、http ://www.asp.net/web-forms/tutorials/deployment/deploying-web-site-projects/displaying-a-custom-error-page-cs をご覧ください。

カスタム エラー ページで、次のコードをページ読み込みイベントに追加して、最後に発生したエラーを確認し、わかりやすいメッセージを表示します。

Exception lastError = HttpContext.Current.Server.GetLastError;
if (lastError is SqlClient.SqlException)  // Check that the last exception was a Sql Exception
{
    SqlClient.SqlException sqlex = (SqlClient.SqlException) lastError;
    switch (sqlex.Number) // Check what type of Sql error occurred
    {
        case 124:  // FOREIGN KEY Constraint failed referential check upon DELETE of row in referenced table
            // Display appropriate error message on the page
            break;
    }
}

SQL エラー番号の詳細については、http: //www.scribd.com/doc/7679522/SQL-Server-Error-Codes にアクセスしてください。

于 2012-11-06T13:52:14.237 に答える
0

web.config で CustomError mode="On" を設定し、カスタム error.aspx ページにリダイレクトするだけでした。

于 2012-11-06T10:31:33.853 に答える