多年来,我的网站偶尔会抛出以下异常:
“找到具有相同ID 'ctl00 $ ctl00 $ ctl34' 的多个控件。跟踪要求控件具有唯一的ID。”
有时用户进入页面时会出现此异常-它发生在不同的页面上,并显示不同的控件ID。通常重新加载页面可以解决问题。其他情况下,该异常会在几次刷新后才能解决。
我知道,当您将动态控件添加到页面并意外在一个命名容器中使用相同的ID时,通常会发生此错误,因此我了解错误的含义。
但是,在我的网站上,我没有添加动态控件。至少我不知道。
我正在运行第三方组件,例如Umbraco、Telerik和Peter Blum,它们几乎肯定会在某些时候动态地向控件树添加控件,但是像我说的那样,这个错误已经存在多年,跨越了所有这些模块的主要版本。
异常的间歇性表明某种多线程定时问题或在某处使用随机数。谁知道...我找不到代码中的原因。
所以我的问题是-鉴于整个堆栈跟踪都在.NET框架中,我该如何调试此问题?
“找到具有相同ID 'ctl00 $ ctl00 $ ctl34' 的多个控件。跟踪要求控件具有唯一的ID。”
有时用户进入页面时会出现此异常-它发生在不同的页面上,并显示不同的控件ID。通常重新加载页面可以解决问题。其他情况下,该异常会在几次刷新后才能解决。
我知道,当您将动态控件添加到页面并意外在一个命名容器中使用相同的ID时,通常会发生此错误,因此我了解错误的含义。
但是,在我的网站上,我没有添加动态控件。至少我不知道。
我正在运行第三方组件,例如Umbraco、Telerik和Peter Blum,它们几乎肯定会在某些时候动态地向控件树添加控件,但是像我说的那样,这个错误已经存在多年,跨越了所有这些模块的主要版本。
异常的间歇性表明某种多线程定时问题或在某处使用随机数。谁知道...我找不到代码中的原因。
所以我的问题是-鉴于整个堆栈跟踪都在.NET框架中,我该如何调试此问题?