最好只使用客户端数据调用或组合服务器端+客户端(混合方法)

时间:2013-06-14 02:14:06

标签: c# asp.net

看起来趋势是从服务器控件转向客户端服务调用以填充您的视图。

话虽这么说,我目前有一个使用所有服务器端控件的Web应用程序。我希望提高性能,我知道通过wcf / mvc进行后续调用(一旦页面加载)将始终赢得性能,因为它会跳过页面生命周期而不必不必要地更新内容。

但是,如果我的页面必须执行初始页面生命周期,那么继续填充控件数据服务器端而不是让页面加载然后不得不向服务器发出另一个请求是否有意义?这对我来说似乎比较慢,尽管你可以加载碎片。也许MVC解决了这个问题,但我使用常规的asp.net(mvc只用于某些服务调用)。

所以我的问题是,它确实提高了客户端的性能,还是像上面提到的那样采用混合方法有意义?我更关注我的初始页面加载时间比什么都重要。

1 个答案:

答案 0 :(得分:1)

  

但是,如果我的页面必须执行初始页面生命周期,那么它不会   感觉要继续并填充控制数据服务器端   而不是让页面加载,然后不得不发出另一个请求   服务器?

正确,你没有通过在第一次加载页面时填充控件而获得任何收益,因为正如你所说,你仍然需要调用服务器来收集数据并产生适当的标记。因此,在您的场景中,就性能而言,混合方法是有意义的。

话虽如此,我认为混合方法通常会变得很麻烦,并且您开始遇到问题ViewState不同步而不是。如果你可以避免它,那么如果你打算在客户端做所有事情并以“正确”的方式做Ajax,那么坚持使用纯MVC。