データベースからデータを取得するためにバックグラウンドワーカーを使用しています。私の問題は、データベース活動のエラーを報告するのに苦労していることです。GUIエラー報告
私はDialog(作成したWindowsフォーム)をDatabaseUpdaterクラスから生成しようとしました。しかし、これがハングアップし、エラーメッセージの代わりに白いボックスが残っています。私は別のスレッドでダイアログを生成しようとしました - これは、ダイアログが現れてほとんど瞬時に消えてしまいます。明らかに私はこれに完全には驚きませんでしたが、Dialogを維持しようとすると同じホワイトボックス効果が生じました。
私の質問は本当にスレッド・アクティビティから来るエラーを表示するためのベストプラクティスですか?
これはわずかな回避策ですが、完全に正しいとは限りませんが、最後に生成された例外をDatabaseUpdaterクラスに格納しています。 BackgroundWorkerが完了したら、エラーを報告しなければ、保存されたExceptionがnullかどうかをチェックします。 仕事をしているようです! – Bailz
RunWorkerCompletedイベントに渡されたRunWorkerCompletedEventArgsには、例外を含むErrorプロパティが含まれています。 – Lee