ReceiveActivity.OperationValidation Evento
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.
Ocorre quando é recebida uma mensagem de uma operação e a validação é necessária.
public:
event EventHandler<System::Workflow::Activities::OperationValidationEventArgs ^> ^ OperationValidation;
public event EventHandler<System.Workflow.Activities.OperationValidationEventArgs> OperationValidation;
member this.OperationValidation : EventHandler<System.Workflow.Activities.OperationValidationEventArgs>
Public Custom Event OperationValidation As EventHandler(Of OperationValidationEventArgs)
Tipo de evento
Exemplos
O exemplo a seguir mostra como usar o OperationValidation
evento .
[System.Diagnostics.DebuggerNonUserCode]
private void InitializeComponent()
{
ReceiveActivity receiveActivity1 = new ReceiveActivity();
receiveActivity1.OperationValidation += new EventHandler<OperationValidationEventArgs>(receiveActivity1_OperationValidation);
}
void receiveActivity1_OperationValidation(object sender, OperationValidationEventArgs e)
{
OperationContext context = OperationContext.Current;
bool authorized = false;
foreach (ClaimSet claims in context.ServiceSecurityContext.AuthorizationContext.ClaimSets)
{
if (claims.ContainsClaim(AuthorizedClaim))
{
authorized = true;
}
}
e.IsValid = authorized;
}
Comentários
Esse é um manipulador de eventos opcional que é acionado quando a ReceiveActivity atividade está prestes a receber uma mensagem. O manipulador associado pode ser usado para executar verificações de segurança baseadas em ClaimSet para autorizar a invocação do cliente da operação de serviço implementada pela ReceiveActivity atividade.
A configuração OperationValidationEventArgs.IsValid como false
no manipulador de eventos rejeita a invocação da operação de serviço e o cliente recebe um FaultException. Se OperationValidationEventArgs.IsValid for definido true
como , a invocação da operação de serviço terá êxito e a ReceiveActivity atividade receberá e processará a mensagem.