四控件的选择
Html控件和服务器控件的选择服务器控件带来的方便和功能上的实现是html控件所不能比拟的但是是以牺牲服务器端的资源来取得的我个人建议如果html控件达不到所要实现的功能而且和一些脚本语言(如javascrpt/vbscript)结合也不能实现的话才会选择服务器控件选择服务器控件后也尽量对其控件优化如取消一些页面状态等(具体看控件的优化)
服务器控件的选择主要针对几个常用数据控件说明一下
DataGrid自带最强大的数据显示控件内置了对数据的修改删除添加分页等很多实用功能如果你只需对数据显示的话尽量不要选择DataGrid(它把数据都存储在viewstate中)也不要使用自带的分页功能microsoft在自动分页的底层做了很多工作虽然使用方便了但性能开销大了
DataList比DataGrid功能少了很多但自定义性强了很多特有的多行数据显示给我们带来了很多方便DataGrid能实现的功能它基本能实现所以建议使用它
Repeater功能最少但自定义性非常强如果只需对数据显示建议使用由于减少了很多功能对服务器的性能带来消耗最小因此如果是对数据显示的话我基本上都是选择Repeater然后DataList最后DataGrid
尽量选择html控件能在客户端实现的功能就在客户端实现(熟练掌握javascript)减少服务器的压力数据控件选择顺序RepeaterDataListDataGrid
五服务器控件的优化
Viewstate
控件的viewstate与页面的viewstate基本是一致的用来保存控件的一些状态处理原则和处理页面的viewstate一样有兴趣的可以用Datagrid绑定数据测试下viewstate保存的数据量有多大它所保存的数据基本和Datagrid显示的数据量大小是等同的
Ispostpack
默认false需要产生事件的时候才需设置为true
控件的优化主要看你对此控件的熟悉情况对控件内部运作的原理越了解就会对其作出合适的优化
性能优化是三两句话说不清的我所写出的仅仅是冰山一角性能的优化是靠平时经验的积累和对程序的运作原理的不断认知
[] [] []