以下は私のエラーロギングコードの一部です。私のアプリ内で例外が発生すると、私はデータベースにログを記録します。そのデータベースがダウンしている場合やその他の問題が発生した場合、私はイベントビューアにログオンしようとします。catchブロック内にスローされた例外をどのように呑み込むことができますか?
何らかの理由でイベントビューアの書き込みに失敗した場合はどうなりますか? をどうすればを放棄するか、この新しい例外を飲み込むことができますか?
void SaveLog(string accountId, Exception ex, Category category, Priority priority)
{
try
{
using (var connection = new SqlConnection(…))
{
connection.Open();
command.ExecuteNonQuery();
}
}
catch (Exception exception)
{
// exception while logging!
using (var eventLog = new EventLog { Source = "tis" })
{
eventLog.WriteEntry(
exception.Message + Environment.NewLine +
exception.StackTrace,
EventLogEntryType.Error);
}
}
}
catchブロックについての特別なものは何もありません。 *あなたはキャッチブロックの外でそれをどうやって行いますか?キャッチブロック内で同じ方法で行います。 –