If Class
Models an If-Then-Else condition.
Assembly: System.Activities (in System.Activities.dll)
System.Activities::Activity
System.Activities::NativeActivity
System.Activities.Statements::If
| Name | Description | |
|---|---|---|
![]() | If() | Creates a new instance of the If class. |
![]() | If(Activity<Boolean>^) | Creates a new instance of the If class using the specified condition. |
![]() | If(Expression<Func<ActivityContext^, Boolean>^>^) | Creates a new instance of the If class using the specified condition. |
![]() | If(InArgument<Boolean>^) | Creates a new instance of the If class using the specified condition. |
| Name | Description | |
|---|---|---|
![]() | CacheId | Gets the identifier of the cache that is unique within the scope of the workflow definition.(Inherited from Activity.) |
![]() | Condition | |
![]() | DisplayName | Gets or sets an optional friendly name that is used for debugging, validation, exception handling, and tracking.(Inherited from Activity.) |
![]() | Else | The activity to be executed if the activity’s Condition resolves to false. |
![]() | Id | Gets an identifier that is unique in the scope of the workflow definition.(Inherited from Activity.) |
![]() | ImplementationVersion | Gets or sets the implementation version of the activity.(Inherited from NativeActivity.) |
![]() | Then | The activity to be executed if the activity’s Condition resolves to true. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object^) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetType() | |
![]() | ShouldSerializeDisplayName() | Indicates whether the DisplayName property should be serialized.(Inherited from Activity.) |
![]() | ToString() | Returns a String that contains the Id and DisplayName of the Activity.(Inherited from Activity.) |
The following code sample demonstrates creating an If activity. This example is from the Sending and Handling Faults sample.
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.") ))) } }
Available since 4.0
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.


