IExecutionContext.Depth Property

Applies To: Microsoft Dynamics CRM 2013, Microsoft Dynamics CRM Online

Gets the current depth of execution in the call stack.

Namespace: Microsoft.Xrm.Sdk
Assembly: Microsoft.Xrm.Sdk (in Microsoft.Xrm.Sdk.dll)

Syntax

'Declaration
ReadOnly Property Depth As Integer
int Depth { get; }

Property Value

Type: Int32
T the current depth of execution in the call stack.

Remarks

Used by the platform for infinite loop prevention. In most cases, this property can be ignored.

Every time a running plug-in or Workflow issues a message request to the Web services that triggers another plug-in or Workflow to execute, the Depth property of the execution context is increased. If the depth property increments to its maximum value within the configured time limit, the platform considers this behavior an infinite loop and further plug-in or Workflow execution is aborted.

The maximum depth (8) and time limit (one hour) are configurable by the Microsoft Dynamics CRM administrator using the PowerShell command Set-CrmSetting. The setting is WorkflowSettings.MaxDepth. For more information, see, “Administer the deployment using Windows PowerShell” in the Implementation Guide.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

Windows Server 2008, Windows Server 2012, Windows 7 (All Versions), Windows 8 (All Versions)

Target Platforms

Windows Server 2008, ,Windows Server 2012, ,Windows 7 (All Versions),

See Also

Reference

IExecutionContext Interface
IExecutionContext Members
Microsoft.Xrm.Sdk Namespace
IExecutionContext.CorrelationId Property

Send comments about this topic to Microsoft.
© 2013 Microsoft Corporation. All rights reserved.