C# – Uygulama bazında beklenmedik hatalar ve Çalışmayı durdurdu hatasının giderilmesi

Uygulama bazında beklenmedik hatalar ve Çalışmayı durdurdu hatasının giderilmesi
Uygulamanızı geliştirirken bazen beklenmedik durumlar ile karşılaşmanız olası. Zaman zaman ön görülmeyen bu durumlar uygulamanızın çökmesine neden olabiliyor.

Bu gibi durumlarda “ABC uygulaması çalışmayı durdurdu” gibi bir hata alıyorsunuz.

Bu problemin çözümü oldukça basit.
İlk olarak uygulamanızın Program.cs dosyasına gitmeniz ve main metodunuzu bulmanız.

İlk satıra aşağıdaki olayı tanımlamanız gerekiyor.

AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;

Olay esnasında tetiklenecek metodumuz ise aşağıdaki gibi olmalı

        static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
        {
            Exception ex = ((Exception)e.ExceptionObject);
            Console.WriteLine("Çöktüm ben hacı --> " + ex.Message);//Console'a yazmak çok mantıklı değil, burada dosyaya veya herhangi bir harici kaynağa(Veritabanı gibi) hata mesajını iletebilir veya hata raporlaması yapacak uygulamayı çalıştırabilirsiniz.
            Environment.Exit(1);
        }

Yukarıdaki kodlarda dikkat edilmesi gereken bir husus ise “Environment.Exit(1);” satırı bu satırdaki (1) parametresi işletim sistemine herşeyin yolunda gittiğini ve hatasız bir şekilde programın sonlandığını bildirir. Bu satırı eklemezseniz “Uygulama çalışmayı durdurdu” şeklinde bir hata mesajı alırsınız.