ana sayfa > C# > C# 6.0 Yenilikleri – Exception filters

C# 6.0 Yenilikleri – Exception filters

Exception filters : Yakalanan hatalara filitre konabilmektedir. Böylece belirtilen catch bloğunda sadece tanımlanan exception filtresine uygun exceptionlar yakalanır. Eğer hiçbir filitreye uymayan exception var ise stacktrace kaybolmadan işleme devam edilir. Aşağıdaki örnekte de görüldüğü gibi number değeri 50’den küçük olduğu için en sondaki catch’e düşmekte ve 1 değerini döndürmektedir. Eğer number 50’den büyük olur ise ilk cathc’e düşmekte ve geriye number’ın kendi değeri döndürülmektedir.

public class Point(int x, int y)
{
        string number = "45";
        public int GetNumber()
        {
            try
            {
                int.TryParse(number, out var x);
                throw new Exception();
                return x;
            }
            catch (Exception e) if (int.Parse(number) > 50)
            {
                return number;
            }
            catch (Exception e2)
            {               
                return 1;
            }
        }
}

 

Categories: C# Tags:
  1. şimdilik yorum yok.
  1. şimdilik geri bağlantı yok
yorum yapabilmek için giriş yapmalısınız