DataBinder Class
Provides support for rapid application development (RAD) designers to generate and parse data-binding expression syntax. This class cannot be inherited.
Assembly: System.Web (in System.Web.dll)
The DataBinder type exposes the following members.
| Name | Description | |
|---|---|---|
![]() ![]() | EnableCaching | Gets or sets a value that indicates whether data caching is enabled at run time. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
![]() ![]() | Eval(Object, String) | Evaluates data-binding expressions at run time. |
![]() ![]() | Eval(Object, String, String) | Evaluates data-binding expressions at run time and formats the result as a string. |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() ![]() | GetDataItem(Object) | Retrieves an object's declared data item. |
![]() ![]() | GetDataItem(Object, Boolean) | Retrieves an object's declared data item, indicating success or failure. |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() ![]() | GetIndexedPropertyValue(Object, String) | Retrieves the value of a property of the specified container and navigation path. |
![]() ![]() | GetIndexedPropertyValue(Object, String, String) | Retrieves the value of the specified property for the specified container, and then formats the results. |
![]() ![]() | GetPropertyValue(Object, String) | Retrieves the value of the specified property of the specified object. |
![]() ![]() | GetPropertyValue(Object, String, String) | Retrieves the value of the specified property of the specified object, and then formats the results. |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
You can use the overloaded static Eval method of this class in data-binding syntax in an ASP.NET Web page. This provides an easier syntax to work with than standard data binding. However, because DataBinder.Eval provides automatic type conversion, it can result in slower performance.
For more information about ASP.NET data binding, expressions, and syntax, see Binding to Databases and Data-Binding Expressions Overview.
The following example uses the static GetPropertyValue method to populate the fields of a Repeater control using an ArrayList of Product objects. The Eval method could be applied with the same syntax, but it would not perform as quickly.
This example uses a custom Product class which exposes a string Model property and a numeric UnitPrice property.
<%@ Page Language="vb" %> <%@ Import Namespace="ASPSample" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> Private Sub Page_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load ' Create and populate an ArrayList to store the products. Dim ProductList As New ArrayList ProductList.Add(New Product("Standard", 99.95)) ProductList.Add(New Product("Deluxe", 159.95)) ' Bind the array list to Repeater ListRepeater.DataSource = ProductList ListRepeater.DataBind() End Sub </script> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>DataBinder Example</title> </head> <body> <form id="Form2" runat="server"> <table> <asp:Repeater id="ListRepeater" runat="server"> <HeaderTemplate> <tr> <th style="width:50; text-align:left">Model</th> <th style="width:100; text-align:right">Unit Price</th> </tr> </HeaderTemplate> <ItemTemplate> <tr> <!-- Databind to the Product information using the DataBinder methods. The Container.DataItem refers to the ArrayList object bound to the ASP:Repeater in the Page Load event. --> <td> <%#DataBinder.GetPropertyValue(Container.DataItem, "Model")%> </td> <!-- Format the UnitPrice as currency. ({0:c}) --> <td style="text-align:right"> <%#DataBinder.GetPropertyValue(Container.DataItem, _ "UnitPrice", "{0:c}")%> </td> </tr> </ItemTemplate> </asp:Repeater> </table> </form> </body> </html>
The following code is the custom Product class. This code should be included in a separate class file in the App_Code directory, such as Product.cs or Product.vb.
Namespace ASPSample Public Class Product Private _Model As String Private _UnitPrice As Double ' The product Model. Public Property Model() As String Get Return _Model End Get Set(ByVal Value As String) _Model = Value End Set End Property ' The price of the each product. Public Property UnitPrice() As Double Get Return _UnitPrice End Get Set(ByVal Value As Double) _UnitPrice = Value End Set End Property Public Sub New(ByVal Model As String, ByVal UnitPrice As Double) _Model = Model _UnitPrice = UnitPrice End Sub End Class End Namespace
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
