NotSupportedException
NotSupportedException бросают, когда
метод или возможность не реализованы для
данного типа в принципе - например,
изменение неизменяемой коллекции. Если
объект временно не готов, используют
InvalidOperationException.
Заглушку «ещё не написали» обозначают
NotImplementedException.
Синтаксис
throw new NotSupportedException("abcde");
Пример
Давайте бросим исключение и выведем
Message:
using System;
class Program
{
static void Main()
{
try
{
throw new NotSupportedException("abcde");
}
catch (NotSupportedException ex)
{
Console.WriteLine(ex.Message);
}
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте поймаем NotSupportedException
отдельным catch:
using System;
class Program
{
static void Main()
{
try
{
throw new NotSupportedException("abcde");
}
catch (NotSupportedException)
{
Console.WriteLine("caught");
}
}
}
Результат выполнения кода:
"caught"
Пример
Давайте отличим от NotImplementedException
по типу в catch:
using System;
class Program
{
static void Main()
{
try
{
throw new NotSupportedException("abcde");
}
catch (NotImplementedException)
{
Console.WriteLine("stub");
}
catch (NotSupportedException)
{
Console.WriteLine("unsupported");
}
}
}
Результат выполнения кода:
"unsupported"
Смотрите также
-
NotImplementedException,
когда метод ещё не реализован -
InvalidOperationException,
когда мешает состояние объекта -
блок
catch,
которым обрабатывают исключение -
ArgumentOutOfRangeException,
когда неверный аргумент вызова