This documentation is archived and is not being maintained.

StateMachineWorkflowActivity.DynamicUpdateCondition Property

Gets or sets an ActivityCondition that determines whether dynamic updates can be made in the workflow, when overridden in a derived class.

Namespace:  System.Workflow.Activities
Assembly:  System.Workflow.Activities (in System.Workflow.Activities.dll)

'Declaration
Public Property DynamicUpdateCondition As ActivityCondition
	Get
	Set

Property Value

Type: System.Workflow.ComponentModel.ActivityCondition
An ActivityCondition that identifies when dynamic updates can be made.

The following example shows how to set the DynamicUpdateCondition property. This example is from the Ordering State Machine SDK sample. For more information, seeOrdering State Machine Sample.


Friend Function GetWorkflows( _
    ByVal workflowEvent As String, _
    ByVal from As System.DateTime, _
    ByVal until As DateTime, _
    ByVal trackingDataItemValue As TrackingDataItemValue) _
    As List(Of SqlTrackingWorkflowInstance)
    Try
        Dim queriedWorkflows As List(Of SqlTrackingWorkflowInstance) = New List(Of SqlTrackingWorkflowInstance)()
        Dim sqlTrackingQuery As SqlTrackingQuery = New SqlTrackingQuery(connectionString)
        Dim sqlTrackingQueryOptions As SqlTrackingQueryOptions = New SqlTrackingQueryOptions()
        sqlTrackingQueryOptions.StatusMinDateTime = from.ToUniversalTime()
        sqlTrackingQueryOptions.StatusMaxDateTime = until.ToUniversalTime()
        ' If QualifiedName, FieldName, or DataValue is not supplied, we will not query since they are all required to match
        If (Not ((trackingDataItemValue.QualifiedName = String.Empty) Or (trackingDataItemValue.FieldName = String.Empty) Or ((trackingDataItemValue.DataValue = String.Empty)))) Then
            sqlTrackingQueryOptions.TrackingDataItems.Add(trackingDataItemValue)
        End If

        queriedWorkflows.Clear()
        If (workflowEvent.ToLower(CultureInfo.InvariantCulture) = "created") Then
            sqlTrackingQueryOptions.WorkflowStatus = System.Workflow.Runtime.WorkflowStatus.Created
            queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions))
        ElseIf (workflowEvent.ToLower(CultureInfo.InvariantCulture) = "completed") Then
            sqlTrackingQueryOptions.WorkflowStatus = System.Workflow.Runtime.WorkflowStatus.Completed
            queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions))
        ElseIf (workflowEvent.ToLower(CultureInfo.InvariantCulture) = "running") Then
            sqlTrackingQueryOptions.WorkflowStatus = System.Workflow.Runtime.WorkflowStatus.Running
            queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions))
        ElseIf (workflowEvent.ToLower(CultureInfo.InvariantCulture) = "suspended") Then
            sqlTrackingQueryOptions.WorkflowStatus = System.Workflow.Runtime.WorkflowStatus.Suspended
            queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions))
        ElseIf (workflowEvent.ToLower(CultureInfo.InvariantCulture) = "terminated") Then
            sqlTrackingQueryOptions.WorkflowStatus = System.Workflow.Runtime.WorkflowStatus.Terminated
            queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions))
        ElseIf ((workflowEvent = Nothing) Or _
                (workflowEvent.ToLower(CultureInfo.InvariantCulture) = "all") Or _
                (workflowEvent = String.Empty)) Then
            sqlTrackingQueryOptions.WorkflowStatus = System.Workflow.Runtime.WorkflowStatus.Created
            queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions))

            sqlTrackingQueryOptions.WorkflowStatus = System.Workflow.Runtime.WorkflowStatus.Completed
            queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions))

            sqlTrackingQueryOptions.WorkflowStatus = System.Workflow.Runtime.WorkflowStatus.Running
            queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions))

            sqlTrackingQueryOptions.WorkflowStatus = System.Workflow.Runtime.WorkflowStatus.Suspended
            queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions))

            sqlTrackingQueryOptions.WorkflowStatus = System.Workflow.Runtime.WorkflowStatus.Terminated
            queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions))

        End If

        Return queriedWorkflows

    Catch exception As Exception
        'Dim errorMessage As String = "Exception in GetWorkflows" + vbCrLf + "Database: " + databaseName + vbCrLf + "Server: " + serverName
        Throw (New Exception("Exception in GetWorkflows", exception))
    End Try
End Function


.NET Framework

Supported in: 4, 3.5, 3.0

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Show: