WebControl渲染内容由Ajax更新

时间:2010-11-07 22:10:31

标签: asp.net-ajax

我对asp.net应用程序中发生的事情感到有些困惑。

页面上有一个控件,它每5秒执行一次ajax请求(使用UpdatePanel和Trigger)来循环显示一些图像。

我创建了一个从Twitter获取信息的WebControl,尽管不是UpdatePanel的一部分,但似乎每次调用AJAX时都会调用RenderContents。

这是正常的行为,还是我错过了什么?它有办法吗?

1 个答案:

答案 0 :(得分:1)

如果没有任何代码,很难提供明确的答案:

请注意,即使是更新面板调用,也会执行整页生命周期。 ASP.Net基本上为整个页面生成标记,但只返回更新面板的部分。无论页面及其任何控件的加载,预渲染等事件是什么,都将执行每个面板​​更新。

您可以通过检查ScriptManager.IsInAsyncPostBack的值来检查您是否正在执行正常的页面加载或AJAX /更新面板加载。您可以将不希望在“非IsInAsyncPostBack”块中执行的代码包装起来。我个人会避免使用更新面板并使用纯AJAX调用来更新图像。