<%# DataBinder.Eval(Container.DataItem, "StringValue") %>
DataBinder.Eval,在运行时使用反射来分析和计算对象的数据绑定表达式。此方法允许 RAD 设计器(如 Visual Studio .NET)轻松地生成和分析数据绑定语法。该方法也可通过声明方式在 Web 窗体页上使用,以简化类型之间的转换。
[C#] public static object Eval( object container, string expression );
-
container
- 表达式根据其进行计算的对象引用。这必须是该页指定语言中的有效对象标识符。 expression
- 从 container 到要放置在绑定控件属性中的属性值的导航路径。这必须是以点分隔的字符串类型
- 的属性或字段名称,如 C# 中的 Tables[0].DefaultView.[0].Price 或 Visual Basic 中的
- Tables(0).DefaultView.(0).Price。
Object,它是数据绑定表达式的计算结果。
尽管当您在 RAD 设计器中创建数据绑定时自动调用此方法,但如果希望简化转换为要在浏览器上显示的文本字符串的操作,则还可以以声明方式使用它。为此,必须将 <%# 和 %> 标记放在数据绑定表达式的两头;这些标记也用于标准 ASP.NET 数据绑定。
当数据绑定到模板列表中的控件时,该方法尤其有用。
警告 由于此方法在运行时使用反射执行后期绑定计算,因此与标准 ASP.NET 数据绑定语法相比,它会导致性能明显下降。
对于所有的列表 Web 控件,如 DataList、DataGrid 或 Repeater,container 参数均应为 Container.DataItem。如果要针对页进行绑定,则 container 参数应为 Page。