EditContext Classe

Definição

Contém metadados relacionados a um processo de edição de dados, como sinalizadores para indicar quais campos foram modificados e o conjunto atual de mensagens de validação.

public ref class EditContext sealed
public sealed class EditContext
type EditContext = class
Public NotInheritable Class EditContext
Herança
EditContext

Construtores

Nome Description
EditContext(Object)

Constrói uma instância de EditContext.

Propriedades

Nome Description
Model

Obtém o objeto de modelo para este EditContext.

Properties

Obtém uma coleção de propriedades arbitrárias associadas a essa instância.

ShouldUseFieldIdentifiers

Obtém se os identificadores de campo devem ser gerados para <elementos de entrada> .

Métodos

Nome Description
AddValidationTask(FieldIdentifier, Task, CancellationTokenSource)

Registra uma tarefa de validação assíncrona para um campo específico. A tarefa é rastreada para consultas de estado pendentes/com falha por meio IsValidationPending(FieldIdentifier) e IsValidationFaulted(FieldIdentifier). Se uma tarefa já estiver rastreada para esse campo, o registrado CancellationTokenSource anteriormente será cancelado e a nova tarefa a substituirá. A EditContext propriedade do fornecido ctsserá cancelada se uma validação subsequente substituir essa e for descartada uma vez task concluída.

Field(String)

Fornece um FieldIdentifier correspondente a um nome de campo especificado neste EditContext' s Model.

GetValidationMessages()

Obtém as mensagens de validação atuais em todos os campos.

Esse método não executa a validação em si. Ele retorna apenas mensagens determinadas por ações de validação anteriores.

GetValidationMessages(Expression<Func<Object>>)

Obtém as mensagens de validação atuais para o campo especificado.

Esse método não executa a validação em si. Ele retorna apenas mensagens determinadas por ações de validação anteriores.

GetValidationMessages(FieldIdentifier)

Obtém as mensagens de validação atuais para o campo especificado.

Esse método não executa a validação em si. Ele retorna apenas mensagens determinadas por ações de validação anteriores.

IsModified()

Determina se algum dos campos neste EditContext foi modificado.

IsModified(Expression<Func<Object>>)

Determina se os campos especificados foram EditContext modificados.

IsModified(FieldIdentifier)

Determina se os campos especificados foram EditContext modificados.

IsValid(Expression<Func<Object>>)

Determina se os campos especificados não EditContext têm mensagens de validação associadas.

IsValid(FieldIdentifier)

Determina se os campos especificados não EditContext têm mensagens de validação associadas.

IsValidationFaulted()

Retorna true se o passe mais recente ValidateAsync(CancellationToken) observou uma exceção sem tratamento de qualquer OnValidationRequestedAsync manipulador. Um passe bem-sucedido ValidateAsync(CancellationToken) subsequente limpa o sinalizador; um passe cancelado pelo chamador o preserva. Use isso para detectar que a validação em si falhou (não apenas mensagens de validação produzidas). Para falhas de validador por campo, AddValidationTask(FieldIdentifier, Task, CancellationTokenSource)use a IsValidationFaulted(FieldIdentifier) sobrecarga.

IsValidationFaulted(FieldIdentifier)

Retornará true se a última validação assíncrona do campo especificado tiver sido falha (lançou uma exceção de não cancelamento).

IsValidationFaulted<TField>(Expression<Func<TField>>)

Retorna true se o campo identificado pela accessor última validação assíncrona da expressão falhou (lançou uma exceção de não cancelamento).

IsValidationPending()

Retorna true se uma passagem no nível ValidateAsync(CancellationToken) do formulário estiver atualmente em vôo. Adequado para conduzir a interface do usuário em todo o formulário, como desabilitar um botão enviar ou mostrar uma "validação..." indicador para o envio atual. Não considera tarefas pendentes no nível do campo (elas são substituídas quando a próxima passagem no nível do formulário é iniciada); use a IsValidationPending(FieldIdentifier) sobrecarga para o estado por campo.

IsValidationPending(FieldIdentifier)

Retorna true se o campo especificado tiver uma tarefa de validação assíncrona pendente. Uma tarefa está "pendente" até que o observador da estrutura tenha resolvido seu resultado e desmarcado o slot (ou seja, não apenas até que a tarefa em si seja concluída) para que um consumidor que espera se IsValidationPending(FieldIdentifier) torne false também veja o valor final IsValidationFaulted(FieldIdentifier) .

IsValidationPending<TField>(Expression<Func<TField>>)

Retorna true se o campo identificado pela accessor expressão tiver uma tarefa de validação assíncrona pendente.

MarkAsUnmodified()

Limpa todos os sinalizadores de modificação dentro deste EditContext.

MarkAsUnmodified(FieldIdentifier)

Limpa qualquer sinalizador de modificação que possa ser rastreado para o campo especificado.

NotifyFieldChanged(FieldIdentifier)

Sinaliza que o valor do campo especificado foi alterado.

NotifyValidationStateChanged()

Sinaliza que algum aspecto do estado de validação foi alterado.

Validate()

Valida isso EditContext.

ValidateAsync(CancellationToken)

Valida isso EditContext de forma assíncrona. Cancela qualquer tarefa de validação assíncrona no nível do campo pendente, invoca os manipuladores síncronos OnValidationRequested , invoca e aguarda os manipuladores assíncronos OnValidationRequestedAsync simultaneamente. Exceções de manipuladores síncronos se propagam para o chamador, correspondendo Validate(). Qualquer exceção sem cancelamento gerada por um manipulador assíncrono está contida: o formulário é marcado como com falha (observável por meio do parâmetro IsValidationFaulted()) e o método retorna false. Enquanto a parte assíncrona está em pré-lançamento, o sem IsValidationPending() parâmetros retorna true para que os aplicativos possam mostrar uma "validação" global indicador sem encapsular a chamada em si. O resultado no nível IsValidationFaulted() do formulário é atualizado somente quando uma passagem é concluída; ela é preservada em passagens canceladas pelo chamador.

Eventos

Nome Description
OnFieldChanged

Um evento que é gerado quando um valor de campo é alterado.

OnValidationRequested

Um evento gerado quando a validação é solicitada. Os componentes do validador assinam esse evento para executar a validação síncrona.

OnValidationRequestedAsync

Um evento assíncrono gerado quando a validação é solicitada. Os componentes do validador assinam esse evento para executar a validação assíncrona (por exemplo, pesquisas de banco de dados, chamadas à API remota). Os manipuladores são aguardados por ValidateAsync(CancellationToken). Validate() também invoca esses manipuladores, mas requer que cada um seja concluído de forma síncrona; se algum retornar um incompleto Task, Validate() gerará InvalidOperationException.

OnValidationStateChanged

Um evento gerado quando o estado de validação é alterado.

Métodos de Extensão

Nome Description
AddDataAnnotationsValidation(EditContext)
Obsoleto.

Adiciona suporte à validação DataAnnotations ao EditContext.

EnableDataAnnotationsValidation(EditContext, IServiceProvider)

Habilita o suporte à validação dataannotations para o EditContext.

EnableDataAnnotationsValidation(EditContext)
Obsoleto.

Habilita o suporte à validação dataannotations para o EditContext.

FieldCssClass(EditContext, FieldIdentifier)

Obtém uma cadeia de caracteres que indica o status do campo especificado como uma classe CSS.

FieldCssClass<TField>(EditContext, Expression<Func<TField>>)

Obtém uma cadeia de caracteres que indica o status do campo especificado como uma classe CSS. Isso incluirá alguma combinação de "modificado", "válido" ou "inválido", dependendo do status do campo.

SetFieldCssClassProvider(EditContext, FieldCssClassProvider)

Associa o fornecido FieldCssClassProvider ao fornecido EditContext. Isso personaliza os nomes de classe CSS de campo usados dentro do EditContext.

Aplica-se a