zoukankan      html  css  js  c++  java
  • 字段绑定的效率问题

    一般来说Repeater 比 DataGrid 的执行效率要高,但是有人进行了测试分析后,得出的结论与想像中的完全相反,为什么?难道真的Repeater 比 DataGrid效率低下?

    我们知道,绑定字段的方法有很多,一般的绑定方法<%# DataBinder.Eval(Container.DataItem, "字段") %>用DataBinder.eval 绑定不必关心数据来源(Dataread或dataset)。不必关心数据的类型eval会把这个数据对象转换为一个字符串。在底层绑定做了很多工作,使 用了反射性能。正因为使用方便了,但却影响了数据性能。再来看一下另一种绑定的方法:<%# ((DataRowView)Container.DataItem)["字段"] %>,当用dataset绑定时,DataItem其实式一个DataRowView(如果绑定的是一个数据读取器(dataread)它就是一个 IdataRecord。)因此直接转换成DataRowView的话,将会给性能带来很大提升。可见真正影响Repeater 和 DataGrid 执行效率的是绑定数据的方法。

    结论:数据绑定的方法最好采用<%# ((DataRowView)Container.DataItem)["字段"] %>的方式。
    使用前注意导入名称空间<%@ Import namespace="System.Data"%>喔。
  • 相关阅读:
    mp4的视频打开可以播放在页面上无法打开
    滚动到特定位置菜单固定的效果
    第一次作业
    第一次上机作业
    第一次作业
    第二次作业
    第一次练习作业
    第一次作业
    第三周作业
    第一次JAVA上机练习
  • 原文地址:https://www.cnblogs.com/gxlinhai/p/535582.html
Copyright © 2011-2022 走看看