在我们的 asp.net webforms 应用程序中,我们将用户控件动态加载到占位符中。为了在回发中保留更改,我们的页面生命周期比平时要复杂一些。为了成功加载我们的视图状态,我们总是在 pageInit 中恢复之前的控制结构。只有这样我们才能清除占位符并将新控件加载到其中。
不幸的是,这意味着旧用户控件和新用户控件的整个生命周期,包括旧模块的整个 .ascx 标记文件的服务器端处理。
现在我的问题是:是否有可能最小化旧模块的服务器端处理,因为它永远不会被发送回客户端(即它的服务器端渲染是完全没有必要的)。我理想地想要实现的是用户控件的一种“轻量级”加载,当它的唯一目的是恢复 vewstate 信息而不会到达客户端时。
练习的目标是性能优化。
任何提示,想法或建议表示赞赏!