Suppose you’ve retrieved data from a datasource and you want to display the value of field1.
Normally, you’d do this by using the <%# DataBinder.Eval(Container.DataItem,”field1″) %> in the aspx/ascx file.
Internally, the DataBinder.Eval method uses reflection to evaluate the argument as well as the result. Thus, it incurs a performance penalty on the page.
An alternative way to accomplish this is by explicitly casting the Container.DataItem to DataRowView. Explicit casting offers better performance while avoiding the cost of Reflection.
Here’s an example:
<%# ((DataRowView)(Container.DataItem)["field1"] %>