这部分内容在做什么?特别是为什么它耗时,如果我没有ViewState和大对象图?有时可能需要速度的3倍。End SaveStateComplete - 为什么会这么耗时?
发现这个问题,只是在dev服务器上。
这部分内容在做什么?特别是为什么它耗时,如果我没有ViewState和大对象图?有时可能需要速度的3倍。End SaveStateComplete - 为什么会这么耗时?
发现这个问题,只是在dev服务器上。
我也注意到,这个阶段,即使没有ViewState的(甚至几乎空白页)比较昂贵
我能够运行我在我的本地IIS实例项目,而不是运行大幅加快这个阶段了在Visual Studio开发Web服务器上。在发布模式和调试模式下编译似乎也有一些改进。
我的猜测是:1)没有什么可担心的,2)VS Web服务器可能比IIS的某些过程优化得更少。例如,IIS可能会缓存机器值(如注册表设置,证书等),VS Web服务器可能不会。
如果在SaveStateComplete期间运行加密例程(例如EnableViewStateMac="true"
),则在VS Web服务器上运行本地计算机资源的调用可能要昂贵得多,即使没有实际加密。
我不认为这是一个很好的答案;如果您真的担心,可以通过配置ASP.NET来查看实际正在执行的操作(例如,哪个BCL方法正在被调用)。
SaveStateComplete的作用是在呈现之前保存控件的viewstate/controlstate。因此,除非您的页面/控件已禁用了viewsate(页面级别的EnableViewState =“false”),否则该作业总是完成。而且,禁用viewstate不会禁用控制状态。 你的网页上有很多控件吗?
不,我甚至可以说0控件。 –