다음을 통해 공유


If.Condition 속성

정의

실행할 자식 활동을 결정하는 조건입니다. 조건이 true로 확인되면 Then 동작을 실행합니다. 조건이 false로 확인되면 Else 동작을 실행합니다.

public:
 property System::Activities::InArgument<bool> ^ Condition { System::Activities::InArgument<bool> ^ get(); void set(System::Activities::InArgument<bool> ^ value); };
[System.Activities.RequiredArgument]
public System.Activities.InArgument<bool> Condition { get; set; }
[<System.Activities.RequiredArgument>]
member this.Condition : System.Activities.InArgument<bool> with get, set
Public Property Condition As InArgument(Of Boolean)

속성 값

실행 조건입니다.

특성

예제

다음 코드 샘플에서는 활동의 Condition 속성을 설정하는 방법을 If 보여 줍니다.

new If
{
    // check if the order is asking for Widgets
    Condition = new InArgument<bool>( (e) => po.Get(e).PartName.Equals("Widget") ),
    Then = new If
    {
        // check if we have enough widgets in stock
        Condition = new InArgument<bool>( (e) => po.Get(e).Quantity < 100 ),
        Then = new SendReply
        {
            DisplayName = "Successful response",
            Request = submitPO,
            Content = SendContent.Create(new InArgument<string>( (e) => string.Format("Success: {0} Widgets have been ordered!", po.Get(e).Quantity)) )
        },
        // if we don't have enough widgets, throw an unhandled exception from this operation's body
        Else = new Throw
        {
            Exception = new InArgument<Exception>((e) => new Exception("We don't have that many Widgets."))
        }
    },
    // if its not for widgets, reply to the client that we don't carry that part by sending back an expected fault type (POFault)
    Else = new SendReply
    {
        DisplayName = "Expected fault",
        Request = submitPO,
        Content = SendContent.Create(new InArgument<FaultException<POFault>>( (e) => new FaultException<POFault>(
            new POFault
            {
                Problem = string.Format("This company does not carry {0}s, but we do carry Widgets.", po.Get(e).PartName),
                Solution = "Try your local hardware store."
            },
            new FaultReason("This is an expected fault.")
            )))
    }
}

적용 대상