freeCodeCamp/guide/russian/csharp/exceptions/index.md

1.8 KiB
Raw Blame History

title localeTitle
Exceptions Исключения

Исключения

Исключением является непредвиденная ошибка, возникающая во время работы программы, например попытка получить доступ к файлу, который не существует. Он остановит программу, если не будет обработан.

пример

Если мы попытаемся прочитать текст файла, который не существует:

using System.IO; 
 
 string content = File.ReadAllText(@"C:\DoesNotExist.txt"); 

Будет FileNotFoundException .

Некоторые другие общие исключения:

  • IndexOutofRangeException : Попытка получить доступ к массиву с недопустимым индексом.
  • NullReferenceException : Попытка использовать неназначенную ссылочную переменную.
  • DivideByZeroException : Попытка деления на 0.

Лучшие практики

Используйте try / catch / finally Blocks

try 
 { 
   var client = new WebClient(); 
   var resultData = client.DownloadString("http://github.com"); 
 } 
 catch (Exception ex) 
 { 
   //code for handling exceptions 
 } 
 finally 
 { 
   //this code is always executed, does not matter if an exception is thrown or not 
 } 

Обращение с возможными исключениями с условиями

Вместо

try 
 { 
   conn.Close(); 
 } 
 catch (Exception ex) 
 { 
   //code for handling exceptions. 
 } 

Попробуй это

if (conn.State != ConnectionState.Closed) 
 { 
    conn.Close(); 
 }