2012-01-15 11 views
1

プロジェクトでjqgridを使用しています。 カスタムメッセージを許可するためにWebサーバー上でエラー応答を返す/設定する方法を知る必要があります。サーバーから動的エラー/失敗した結果メッセージを送信します。

私のローカルインスタンスでは、次の結果が得られます。 Local

しかし、私たちのWebサーバーの展開されたサイトでは、メッセージは抑制され、デフォルトのメッセージに置き換えられます。 Server

応答ステータスコードを500に設定し、説明を自分のカスタムメッセージに設定することで、エラー/失敗の結果を返すことに言及する価値があります。 (もっと良い方法がありますか)

また、次の設定値を追加/変更しました。

<customErrors mode="On" /> 

<system.webServer> 
     <httpErrors errorMode="Custom" > 
     <remove statusCode="500" /> 
     </httpErrors> 
</system.webServer> 

誰かが間違っていることを知っていますか? P

答えて

0

のためのその良い方法は、私は解決策が見つかりました:またはどのようにそれが働いて取得します。私は

<system.webServer> 
     <httpErrors errorMode="Custom" > 
     <remove statusCode="500" /> 
     </httpErrors> 
</system.webServer> 

に私のweb.configファイルを更新する前に、それは

<system.webServer> 
     <httpErrors errorMode="DetailedLocalOnly" /> 
</system.webServer> 

(私はリモートソースからサイトにアクセスしたとして、私は、最初の場所で問題が発生した理由を説明している)に設定しました。

<system.webServer> 
      <httpErrors errorMode="Detailed" /> 
</system.webServer> 

を実装し、ムハンマドムダシールの提案を実装することは、このトリックを行うように見えました。

1

これを試してみてください、Custom Error Handling

+0

私はこの修正プログラムを実装しました。これはエラー処理のより良い方法ですが、私はまだ同じ問題があります。ステータスコードが500に設定され、カスタムメッセージが表示されなくなり、デフォルトのエラーメッセージに置き換えられます –

+0

アクションフィルタイベントが実行されていないようです。例外はその前に処理されます(global.asaxのApplication_errorイベントなど)アクションフィルタの後に発生していることを確認してください。 –

+0

実行中です...しかし、私はちょうどグローバルでこの行に気付きました。 public static void RegisterGlobalFilters(GlobalFilterCollection filters) { filters.Add(new HandleErrorAttribute()); } これを今すぐ削除して、何らかの形でカスタムエラー属性をオーバーライドするかどうかを確認します –

関連する問題