Repeater.DataSource Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets or sets the data source that provides data for populating the list.

Namespace:   System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

public virtual object DataSource { get; set; }

Property Value

Type: System.Object

An IEnumerable or IListSource object that contains a collection of values used to supply data to this control. The default value is null.

Exception Condition

The DataSource object specified is not a supported source of data for the Repeater control.


The data source cannot be resolved because a value is specified for both the DataSource property and the DataSourceID property.

Use this property to specify the source of data to populate the Repeater control. The DataSource can be any System.Collections.IEnumerable collection such as a System.Data.DataView for accessing databases, a System.Collections.ArrayList, or an array, or an IListSource object. When you set the DataSource property you must manually write the code to bind to the data source.

If the data source specified by the DataSource property contains multiple sources of data, use the DataMember property to specify the specific source to bind to the control. For example, if you have a System.Data.DataSet with multiple tables, you must specify which table to bind to the control. After you have specified the data source, use the DataBind method to bind the data source to the control.

Alternately, you can use the DataSourceID property to automatically bind to a data source represented by a data source control. When you set the DataSourceID property, the Repeater control automatically binds to the specified data source control. You do not need to write code that explicitly calls the DataBind method unless you dynamically change properties of the Repeater control.

If values are specified for both the DataSource property and the DataSourceID property, ASP.NET is not able to resolve the data source and a System.Web.HttpException is thrown.

The following example demonstrates how to specify the DataSource of the Repeater control when the page is loaded.

<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
<html xmlns="" >
    <title>Repeater Example</title>
<script runat="server">
       void Page_Load(Object Sender, EventArgs e) {

          if (!IsPostBack) {
             ArrayList values = new ArrayList();


             // Set the DataSource of the Repeater. 
             Repeater1.DataSource = values;


    <h3>Repeater Example</h3>

    <form id="form1" runat="server">

       <br />

       <asp:Repeater id="Repeater1" runat="server">

             <table border="1">

                <td> <%# Container.DataItem %> </td>


       <br />


.NET Framework
Available since 1.1
Return to top