Aracılığıyla paylaş


ReceiveActivity.OperationValidation Olay

Tanım

bir işlem için bir ileti alındığında ve doğrulama gerektiğinde gerçekleşir.

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) 

Olay Türü

Örnekler

Aşağıdaki örnekte olayın nasıl kullanılacağı gösterilmektedir OperationValidation .

[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;
}

Açıklamalar

Bu, etkinlik bir ileti almak üzereyken ReceiveActivity tetiklenen isteğe bağlı bir olay işleyicidir. İlişkili işleyici, etkinlik tarafından ReceiveActivity uygulanan hizmet işleminin istemci çağrısını yetkilendirmek için ClaimSet tabanlı güvenlik denetimleri gerçekleştirmek için kullanılabilir.

OperationValidationEventArgs.IsValid olay işleyicisinde ayarıfalse, hizmet işlemi çağrısını reddeder ve istemci bir FaultExceptionalır. olarak ayarlanırsa OperationValidationEventArgs.IsValidtrue, hizmet işlemi çağrısı başarılı olur ve ReceiveActivity etkinlik iletiyi alır ve işler.

Şunlara uygulanır