Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Try-catch bloğunun amacı, çalışan kod tarafından oluşturulan bir özel durumu yakalamak ve işlemektir. Bazı özel durumlar bir catch blokta işlenebilir ve sorun özel durum yeniden oluşturulmadan çözülür; ancak, daha sık yapabileceğiniz tek şey uygun özel durumun oluştuğundan emin olmaktır.
Örnek
Örneğin, IndexOutOfRangeException en uygun özel durum değildir: çünkü hata, çağıran tarafından geçirilen index bağımsız değişkeninden kaynaklandığı için yöntem için ArgumentOutOfRangeException daha mantıklıdır.
static int GetInt(int[] array, int index)
{
try
{
return array[index];
}
catch (IndexOutOfRangeException e) // CS0168
{
Console.WriteLine(e.Message);
// Set IndexOutOfRangeException to the new exception's InnerException.
throw new ArgumentOutOfRangeException("index parameter is out of range.", e);
}
}
Açıklamalar
Özel duruma neden olan kod, try bloğuna alınır.
catch Bir deyim, oluşursa IndexOutOfRangeException'i işlemek için hemen arkasına eklenir.
catch bloğu IndexOutOfRangeException öğesini işler ve bunun yerine daha uygun ArgumentOutOfRangeException hatasını fırlatır. Çağırana mümkün olduğunca çok bilgi sağlamak için, özgün özel durumu yeni özel durumun InnerException olarak belirtmeyi göz önünde bulundurun.
InnerException özelliği salt okunur bir özelliğe sahip olduğundan, bu yüzden bunu yeni özel durumun oluşturucusunda atamanız gerekir.