ASP.NET Framework 提供了一种静态方法,计算后期绑定的数据绑定表达式并且可选择将结果格式化为字符串。即 DataBinder.Eval 方法。
DataBinder.Eval 很方便,因为它消除了开发人员为强迫将值转换为所需的数据类型而必须做的许多显式转换。这在数据绑定模板列表内的控件时尤其有用,因为通常数据行和数据字段的类型都必须转换。
但是 DataBinder.Eval 会对标准数据绑定语法带来很明显的性能损失,因为它使用后期绑定反射,注意这一点很重要。使用 DataBinder.Eval 时需谨慎,尤其是在不需要字符串格式化时。
下面的示例演示分别使用标准数据绑定语法和 DataBinder.Eval 方法进行数据绑定。
本例中整数将显示为货币字符串。
DataBinder.Eval 很方便,因为它消除了开发人员为强迫将值转换为所需的数据类型而必须做的许多显式转换。这在数据绑定模板列表内的控件时尤其有用,因为通常数据行和数据字段的类型都必须转换。
但是 DataBinder.Eval 会对标准数据绑定语法带来很明显的性能损失,因为它使用后期绑定反射,注意这一点很重要。使用 DataBinder.Eval 时需谨慎,尤其是在不需要字符串格式化时。
下面的示例演示分别使用标准数据绑定语法和 DataBinder.Eval 方法进行数据绑定。
本例中整数将显示为货币字符串。
<%-- 标准数据绑定语法
请在 *.aspx 页添加 System.Data 名称空间引用
--%> <%# String.Format("{0:c}", ((DataRowView)Container.DataItem)["IntegerValue"]) %>
<%-- DataBinder.Eval
--%>
<%# DataBinder.Eval(Container.DataItem, "IntegerValue", "{0:c}") %>