Click to Rate and Give Feedback
MSDN
MSDN Library
.NET Development
.NET Framework 3.5
 DataSource Property
This page is specific to
Microsoft Visual Studio 2008/.NET Framework 3.5

Other versions are also available for the following:
.NET Framework Class Library
BaseDataBoundControl..::.DataSource Property

Updated: November 2007

Gets or sets the object from which the data-bound control retrieves its list of data items.

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

Visual Basic (Declaration)
<BindableAttribute(True)> _
<ThemeableAttribute(False)> _
Public Overridable Property DataSource As Object
Visual Basic (Usage)
Dim instance As BaseDataBoundControl
Dim value As Object

value = instance.DataSource

instance.DataSource = value
C#
[BindableAttribute(true)]
[ThemeableAttribute(false)]
public virtual Object DataSource { get; set; }
Visual C++
[BindableAttribute(true)]
[ThemeableAttribute(false)]
public:
virtual property Object^ DataSource {
    Object^ get ();
    void set (Object^ value);
}
J#
/** @property */
/** @attribute BindableAttribute(true) */
/** @attribute ThemeableAttribute(false) */
public Object get_DataSource()
/** @property */
/** @attribute BindableAttribute(true) */
/** @attribute ThemeableAttribute(false) */
public  void set_DataSource(Object value)
JScript
public function get DataSource () : Object
public function set DataSource (value : Object)
ASP.NET
<asp:BaseDataBoundControl DataSource="Object" />

Property Value

Type: System..::.Object

An object that represents the data source from which the data-bound control retrieves its data. The default is nullNothingnullptra null reference (Nothing in Visual Basic).

When you set the DataSource property, the ValidateDataSource method is called. In addition, if the data-bound control has already been initialized, the OnDataPropertyChanged method is called to set the RequiresDataBinding property to true.

This property cannot be set by themes or style sheet themes. For more information, see ThemeableAttribute and ASP.NET Themes and Skins Overview.

The following code example demonstrates how the DataSource property of a data-bound control is used. In this example, the GridView control is bound to a DataSet object. After the DataSource property is set, the DataBind method is called explicitly.

Visual Basic
<%@ Page language="VB" %>
<%@ import namespace="System.Data" %>
<%@ import namespace="System.Data.SqlClient" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)

    ' This example uses Microsoft SQL Server and connects
    ' to the Northwind sample database. The data source needs
    ' to be bound to the GridView control only when the 
    ' page is first loaded. Thereafter, the values are
    ' stored in view state.                      
    If Not IsPostBack Then

      ' Declare the query string.
      Dim queryString As String = _
        "Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"

      ' Run the query and bind the resulting DataSet
      ' to the GridView control.
      Dim ds As DataSet = GetData(queryString)
      If (ds.Tables.Count > 0) Then

        AuthorsGridView.DataSource = ds
        AuthorsGridView.DataBind()

      Else

        Message.Text = "Unable to connect to the database."

      End If

    End If

  End Sub

  Function GetData(ByVal queryString As String) As DataSet

    ' Retrieve the connection string stored in the Web.config file.
    Dim connectionString As String = ConfigurationManager.ConnectionStrings("NorthWindConnectionString").ConnectionString

    Dim ds As New DataSet()

    Try

      ' Connect to the database and run the query.
      Dim connection As New SqlConnection(connectionString)
      Dim adapter As New SqlDataAdapter(queryString, Connection)

      ' Fill the DataSet.
      Adapter.Fill(ds)


    Catch ex As Exception

      ' The connection failed. Display an error message.
      Message.Text = "Unable to connect to the database."

    End Try

    Return ds

  End Function

</script>

<html  >
  <head runat="server">
    <title>GridView DataBind Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>GridView DataBind Example</h3>

      <asp:label id="Message"
        forecolor="Red"
        runat="server"/>

      <br/>    

      <asp:gridview id="AuthorsGridView" 
        autogeneratecolumns="true" 
        runat="server">
      </asp:gridview>

    </form>
  </body>
</html>


C#
<%@ Page language="C#" %>
<%@ import namespace="System.Data" %>
<%@ import namespace="System.Data.SqlClient" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void Page_Load(Object sender, EventArgs e)
  {

    // This example uses Microsoft SQL Server and connects
    // to the Northwind sample database. The data source needs
    // to be bound to the GridView control only when the 
    // page is first loaded. Thereafter, the values are
    // stored in view state.                      
    if(!IsPostBack)
    {

      // Declare the query string.
      String queryString = 
        "Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]";

      // Run the query and bind the resulting DataSet
      // to the GridView control.
      DataSet ds = GetData(queryString);
      if (ds.Tables.Count > 0)
      {
        AuthorsGridView.DataSource = ds;
        AuthorsGridView.DataBind();
      }
      else
      {
        Message.Text = "Unable to connect to the database.";
      }

    }     

  }

  DataSet GetData(String queryString)
  {

    // Retrieve the connection string stored in the Web.config file.
    String connectionString = ConfigurationManager.ConnectionStrings["NorthWindConnectionString"].ConnectionString;      

    DataSet ds = new DataSet();

    try
    {
      // Connect to the database and run the query.
      SqlConnection connection = new SqlConnection(connectionString);        
      SqlDataAdapter adapter = new SqlDataAdapter(queryString, connection);

      // Fill the DataSet.
      adapter.Fill(ds);

    }
    catch(Exception ex)
    {

      // The connection failed. Display an error message.
      Message.Text = "Unable to connect to the database.";

    }

    return ds;

  }

</script>

<html  >
  <head runat="server">
    <title>GridView DataBind Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>GridView DataBind Example</h3>

      <asp:label id="Message"
        forecolor="Red"
        runat="server"/>

      <br/>    

      <asp:gridview id="AuthorsGridView" 
        autogeneratecolumns="true" 
        runat="server">
      </asp:gridview>

    </form>
  </body>
</html>


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0
Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
Processing
© 2008 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Page view tracker