2017-04-01 10 views
1

私のアプリケーションの設定では、難しいエラーをテストするためにcustomErrorsを削除しました。Azureサーバーでキャッチが動作しない

、エラーが、私は試して置く起こっする必要があります。

if (ModelState.IsValid) 
     { 
      db.TarefaHoras.Add(tarefaHora); 

      try 
      { 
       db.SaveChanges(); 
      } 
      catch (DbUpdateException ex) 
      { 
       ErroDetalhe erro = new ErroDetalhe(); 
       erro.Data = tarefaHora.Data; 
       erro.UsuarioId = tarefaHora.ApplicationUserId; 
       erro.JSON = JsonConvert.SerializeObject(tarefaHora); 
       erro.Tipo = "TarefaHora"; 
       erro.Controller = "TarefaHoras"; 
       erro.Action = "Create Post"; 
       erro.Exception = ex.GetType().FullName; 

       db.ErroDetalhes.Add(erro); 
       db.SaveChanges(); 

       return RedirectToAction("ErroNaAtualizacaoDaBase", "Erros", new { id = erro.ID });       
      } 

      return RedirectToAction("Index", "Home"); 
     } 

     return View(tarefaHora); 
    } 
ので、私の試みは、エラーのと、このためのより良い説明を取得するためにこのエラーは、実行時にのみ、唯一のAzureサーバー上で行われ

ました私は、情報が入金されたテーブルを作成しました。

しかし....

問題は、私は取得していますビューのエラーは、私が作成し、それがキャッチにリダイレクトされるビュー「ErrorInputUpdate」ではないということです。

デフォルトのAspNETエラービューが表示されます。

私は共有ビューに入り、デフォルトページを削除してweb.configからcustomErrorsを削除しました。

Azureでも、デフォルトのエラービューが表示されます。

何が起こっている可能性がありますか?

+0

Visual Studioでのエラー処理と同じような操作をしたい場合は、** Debug **でビルドして公開してください。 – evilSnobu

+0

どのように私はデバッグで公開することをお勧めしましたが、一般的なエラー[NullReferenceException:オブジェクト参照がオブジェクトのインスタンスに設定されていません。]が表示されます。何か案が? – Neumann

+0

ブレークポイントを追加してステップスルーします。リモートで行うことができます - https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-dotnet-troubleshoot-visual-studio(リモートデバッグセクション)。スタックトレースは、どこが壊れているのかを理解するのに十分なコンテキストをすでに提供しているはずです。 – evilSnobu

答えて

0

したがって、db.SaveChanges();を呼び出すと例外が生成されます。つまり、コンテキストdbは無効であり、解決されるか、破棄されるべきです。

しかし、エラー入力を作成して、まだ同じ状態であるdbコンテキストを使用して追加しています。したがって、キャッチブロック内のdb.SaveChanges();の呼び出しは引き続き例外を生成しますが、今回はキャッチされません。

解決策は、ファイルなどのようなデータベース以外のものにエラーを書き込むか、別のEFコンテキストインスタンスを使用することです。他のオプションは、db.SaveChanges();を再度呼び出す前に無効なエントリを削除または修正するか、データベースにエラーを格納せず、すべての詳細をリダイレクトビューに含めます。

+0

ありがとう、私はすべてのdb.savechanges – Neumann

関連する問題