The TaxonomyWebTaggingControl is a great control to use in your custom code, but when adding this control to a custom webpart I experienced my code running twice! I don’t know if this behaviour is specific to this control, but I have been able to isolate the behaviour to this control in my webpart.
Don’t have a solution to this
The first call has the following stacktrace:
MyAssembly.dll!MyAssembly.MyWebPart.MyWebPart.CreateChildControls() Line 86 C#
System.Web.dll!System.Web.UI.Control.EnsureChildControls() + 0x92 bytes
System.Web.dll!System.Web.UI.Control.PreRenderRecursiveInternal() + 0x3d bytes
System.Web.dll!System.Web.UI.Control.PreRenderRecursiveInternal() + 0xe0 bytes
System.Web.dll!System.Web.UI.Control.PreRenderRecursiveInternal() + 0xe0 bytes
System.Web.dll!System.Web.UI.Control.PreRenderRecursiveInternal() + 0xe0 bytes
System.Web.dll!System.Web.UI.Control.PreRenderRecursiveInternal() + 0xe0 bytes
System.Web.dll!System.Web.UI.Control.PreRenderRecursiveInternal() + 0xe0 bytes
System.Web.dll!System.Web.UI.Page.ProcessRequestMain(bool includeStagesBeforeAsyncPoint, bool includeStagesAfterAsyncPoint) + 0xd42 bytes
System.Web.dll!System.Web.UI.Page.ProcessRequest(bool includeStagesBeforeAsyncPoint, bool includeStagesAfterAsyncPoint) + 0xa0 bytes
System.Web.dll!System.Web.UI.Page.ProcessRequest() + 0x5b bytes
System.Web.dll!System.Web.UI.Page.ProcessRequest(System.Web.HttpContext context) + 0xf0 bytes
System.Web.dll!System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() + 0x257 bytes
System.Web.dll!System.Web.HttpApplication.ExecuteStep(System.Web.HttpApplication.IExecutionStep step, ref bool completedSynchronously) + 0xab bytes
System.Web.dll!System.Web.HttpApplication.PipelineStepManager.ResumeSteps(System.Exception error) + 0x511 bytes
System.Web.dll!System.Web.HttpApplication.BeginProcessRequestNotification(System.Web.HttpContext context, System.AsyncCallback cb) + 0x72 bytes
System.Web.dll!System.Web.HttpRuntime.ProcessRequestNotificationPrivate(System.Web.Hosting.IIS7WorkerRequest wr, System.Web.HttpContext context) + 0x269 bytes
System.Web.dll!System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(System.IntPtr managedHttpContext, System.IntPtr nativeRequestContext, System.IntPtr moduleData, int flags) + 0x411 bytes
System.Web.dll!System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(System.IntPtr managedHttpContext, System.IntPtr nativeRequestContext, System.IntPtr moduleData, int flags) + 0x2b bytes
[Native to Managed Transition]
[Managed to Native Transition]
System.Web.dll!System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(System.IntPtr managedHttpContext, System.IntPtr nativeRequestContext, System.IntPtr moduleData, int flags) + 0x540 bytes
System.Web.dll!System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(System.IntPtr managedHttpContext, System.IntPtr nativeRequestContext, System.IntPtr moduleData, int flags) + 0x2b bytes
[Appdomain Transition]
Stacktrace second call:
MyAssembly.dll!MyAssembly.MyWebPart.MyWebPart.CreateChildControls() Line 86 C#
System.Web.dll!System.Web.UI.Control.EnsureChildControls() + 0x92 bytes
System.Web.dll!System.Web.UI.WebControls.WebParts.Part.Controls.get() + 0x14 bytes
System.Web.dll!System.Web.UI.Control.LoadChildViewStateByIndex(System.Collections.ArrayList childState) + 0x22 bytes
System.Web.dll!System.Web.UI.Control.LoadViewStateRecursive(object savedState) + 0x18b bytes
System.Web.dll!System.Web.UI.Control.LoadChildViewStateByID(System.Collections.ArrayList childState) + 0xb4 bytes
System.Web.dll!System.Web.UI.Control.LoadViewStateRecursive(object savedState) + 0x17b bytes
System.Web.dll!System.Web.UI.Control.LoadChildViewStateByIndex(System.Collections.ArrayList childState) + 0xe8 bytes
System.Web.dll!System.Web.UI.Control.LoadViewStateRecursive(object savedState) + 0x18b bytes
System.Web.dll!System.Web.UI.Control.LoadChildViewStateByIndex(System.Collections.ArrayList childState) + 0xe8 bytes
System.Web.dll!System.Web.UI.Control.LoadViewStateRecursive(object savedState) + 0x18b bytes
System.Web.dll!System.Web.UI.Control.LoadChildViewStateByIndex(System.Collections.ArrayList childState) + 0xe8 bytes
System.Web.dll!System.Web.UI.Control.LoadViewStateRecursive(object savedState) + 0x18b bytes
System.Web.dll!System.Web.UI.Control.LoadChildViewStateByIndex(System.Collections.ArrayList childState) + 0xe8 bytes
System.Web.dll!System.Web.UI.Control.LoadViewStateRecursive(object savedState) + 0x18b bytes
System.Web.dll!System.Web.UI.Page.LoadAllState() + 0x234 bytes
System.Web.dll!System.Web.UI.Page.ProcessRequestMain(bool includeStagesBeforeAsyncPoint, bool includeStagesAfterAsyncPoint) + 0x748 bytes
System.Web.dll!System.Web.UI.Page.ProcessRequest(bool includeStagesBeforeAsyncPoint, bool includeStagesAfterAsyncPoint) + 0xa0 bytes
System.Web.dll!System.Web.UI.Page.ProcessRequest() + 0x5b bytes
System.Web.dll!System.Web.UI.Page.ProcessRequest(System.Web.HttpContext context) + 0xf0 bytes
System.Web.dll!System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() + 0x257 bytes
System.Web.dll!System.Web.HttpApplication.ExecuteStep(System.Web.HttpApplication.IExecutionStep step, ref bool completedSynchronously) + 0xab bytes
System.Web.dll!System.Web.HttpApplication.PipelineStepManager.ResumeSteps(System.Exception error) + 0x511 bytes
System.Web.dll!System.Web.HttpApplication.BeginProcessRequestNotification(System.Web.HttpContext context, System.AsyncCallback cb) + 0x72 bytes
System.Web.dll!System.Web.HttpRuntime.ProcessRequestNotificationPrivate(System.Web.Hosting.IIS7WorkerRequest wr, System.Web.HttpContext context) + 0x269 bytes
System.Web.dll!System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(System.IntPtr managedHttpContext, System.IntPtr nativeRequestContext, System.IntPtr moduleData, int flags) + 0x411 bytes
System.Web.dll!System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(System.IntPtr managedHttpContext, System.IntPtr nativeRequestContext, System.IntPtr moduleData, int flags) + 0x2b bytes
[Native to Managed Transition]
[Managed to Native Transition]
System.Web.dll!System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(System.IntPtr managedHttpContext, System.IntPtr nativeRequestContext, System.IntPtr moduleData, int flags) + 0x540 bytes
System.Web.dll!System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(System.IntPtr managedHttpContext, System.IntPtr nativeRequestContext, System.IntPtr moduleData, int flags) + 0x2b bytes
[Appdomain Transition]