NotImplementedException Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
A exceção que é lançada quando uma operação ou um método solicitado não é implementado.
public ref class NotImplementedException : Exception
public ref class NotImplementedException : SystemException
public class NotImplementedException : Exception
public class NotImplementedException : SystemException
[System.Serializable]
public class NotImplementedException : SystemException
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class NotImplementedException : SystemException
type NotImplementedException = class
inherit Exception
type NotImplementedException = class
inherit SystemException
[<System.Serializable>]
type NotImplementedException = class
inherit SystemException
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type NotImplementedException = class
inherit SystemException
Public Class NotImplementedException
Inherits Exception
Public Class NotImplementedException
Inherits SystemException
- Herança
- Herança
- Atributos
Exemplos
O exemplo a seguir gera essa exceção para um método que não foi desenvolvido.
static void Main(string[] args)
{
try
{
FutureFeature();
}
catch (NotImplementedException notImp)
{
Console.WriteLine(notImp.Message);
}
}
static void FutureFeature()
{
// Not developed yet.
throw new NotImplementedException();
}
open System
let futureFeature () =
// Not developed yet.
raise (NotImplementedException())
[<EntryPoint>]
let main _ =
try
futureFeature ()
with :? NotImplementedException as notImp ->
printfn $"{notImp.Message}"
0
Sub Main()
Try
FutureFeature()
Catch NotImp As NotImplementedException
Console.WriteLine(NotImp.Message)
End Try
End Sub
Sub FutureFeature()
' not developed yet.
Throw New NotImplementedException()
End Sub
Comentários
A NotImplementedException exceção é gerada quando um método específico, o acessador get ou o acessador de conjunto estão presentes como um membro de um tipo, mas não é implementado.
NotImplementedException usa a implementação padrão Object.Equals , que dá suporte à igualdade de referência. Para obter uma lista de valores iniciais de uma instância, NotImplementedExceptionconsulte os NotImplementedException construtores.
Lançando a exceção
Você pode optar por lançar uma NotImplementedException exceção em propriedades ou métodos em seus próprios tipos quando o membro ainda estiver em desenvolvimento e só será implementado posteriormente no código de produção. Em outras palavras, uma NotImplementedException exceção deve ser sinônimo de "ainda em desenvolvimento".
Manipulando a exceção
A NotImplementedException exceção indica que o método ou propriedade que você está tentando invocar não tem implementação e, portanto, não fornece nenhuma funcionalidade. Como resultado, você não deve lidar com esse erro em um try/catch
bloco. Em vez disso, você deve remover a invocação de membro do código. Você pode incluir uma chamada ao membro quando ela for implementada na versão de produção de uma biblioteca.
Em alguns casos, uma NotImplementedException exceção pode não ser usada para indicar a funcionalidade que ainda está em desenvolvimento em uma biblioteca de pré-produção. No entanto, isso ainda indica que a funcionalidade está indisponível e você deve remover a invocação de membro do código.
NotImplementedException e outros tipos de exceção
O .NET Framework também inclui dois outros tipos NotSupportedException de exceção e PlatformNotSupportedException, que indicam que não existe nenhuma implementação para um membro específico de um tipo. Você deve lançar um destes em vez de uma NotImplementedException exceção sob as condições a seguir.
PlatformNotSupportedException Exceção
Se você tiver projetado um tipo com um ou mais membros disponíveis em algumas plataformas ou em algumas versões, mas não em outras, poderá lançar essa exceção em plataformas nas quais a funcionalidade não tem suporte.
NotSupportedException Exceção
Gere uma NotSupportedException exceção se a implementação de um membro de interface ou uma substituição a um método de classe base abstrata não for possível. Por exemplo, o Convert.ToInt32(DateTime) método gera uma NotSupportedException exceção porque não existe uma conversão significativa entre uma data e hora e um inteiro com sinal de 32 bits. O método deve estar presente nesse caso porque a Convert classe implementa a IConvertible interface.
Você também deve lançar uma NotSupportedException exceção se tiver implementado uma classe base abstrata e adicionar um novo membro a ela que deve ser substituído por classes derivadas. Nesse caso, tornar o membro abstrato faz com que subclasses existentes falhem ao carregar.
Construtores
NotImplementedException() |
Inicializa uma nova instância da classe NotImplementedException com propriedades padrão. |
NotImplementedException(SerializationInfo, StreamingContext) |
Inicializa uma nova instância da classe NotImplementedException com dados serializados. |
NotImplementedException(String) |
Inicializa uma nova instância da classe NotImplementedException com uma mensagem de erro especificada. |
NotImplementedException(String, Exception) |
Inicializa uma nova instância da classe NotImplementedException com uma mensagem de erro especificada e uma referência à exceção interna que é a causa da exceção. |
Propriedades
Data |
Obtém uma coleção de pares de chave/valor que fornecem informações definidas pelo usuário adicionais sobre a exceção. (Herdado de Exception) |
HelpLink |
Obtém ou define um link para o arquivo de ajuda associado a essa exceção. (Herdado de Exception) |
HResult |
Obtém ou define HRESULT, um valor numérico codificado que é atribuído a uma exceção específica. (Herdado de Exception) |
InnerException |
Obtém a instância Exception que causou a exceção atual. (Herdado de Exception) |
Message |
Obtém uma mensagem que descreve a exceção atual. (Herdado de Exception) |
Source |
Obtém ou define o nome do aplicativo ou objeto que causa o erro. (Herdado de Exception) |
StackTrace |
Obtém uma representação de cadeia de caracteres de quadros imediatos na pilha de chamadas. (Herdado de Exception) |
TargetSite |
Obtém o método que gerou a exceção atual. (Herdado de Exception) |
Métodos
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetBaseException() |
Quando substituído em uma classe derivada, retorna a Exception que é a causa raiz de uma ou mais exceções subsequentes. (Herdado de Exception) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetObjectData(SerializationInfo, StreamingContext) |
Quando substituído em uma classe derivada, define o SerializationInfo com informações sobre a exceção. (Herdado de Exception) |
GetType() |
Obtém o tipo de runtime da instância atual. (Herdado de Exception) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ToString() |
Cria e retorna uma representação de cadeia de caracteres da exceção atual. (Herdado de Exception) |
Eventos
SerializeObjectState |
Obsoleto.
Ocorre quando uma exceção é serializada para criar um objeto de estado de exceção que contém dados serializados sobre a exceção. (Herdado de Exception) |