LinqDataSource Class

Definition

Enables the use of Language-Integrated Query (LINQ) in an ASP.NET Web page through markup text to retrieve and modify data from a data object.

public ref class LinqDataSource : System::Web::UI::DataSourceControl, System::Web::DynamicData::IDynamicDataSource
public ref class LinqDataSource : System::Web::UI::WebControls::ContextDataSource, System::Web::DynamicData::IDynamicDataSource
[System.Drawing.ToolboxBitmap(typeof(System.Web.UI.WebControls.LinqDataSource), "LinqDataSource.ico")]
public class LinqDataSource : System.Web.UI.DataSourceControl, System.Web.DynamicData.IDynamicDataSource
[System.Drawing.ToolboxBitmap(typeof(System.Web.UI.WebControls.LinqDataSource), "LinqDataSource.bmp")]
public class LinqDataSource : System.Web.UI.WebControls.ContextDataSource, System.Web.DynamicData.IDynamicDataSource
[<System.Drawing.ToolboxBitmap(typeof(System.Web.UI.WebControls.LinqDataSource), "LinqDataSource.ico")>]
type LinqDataSource = class
    inherit DataSourceControl
    interface IDynamicDataSource
    interface IDataSource
[<System.Drawing.ToolboxBitmap(typeof(System.Web.UI.WebControls.LinqDataSource), "LinqDataSource.bmp")>]
type LinqDataSource = class
    inherit ContextDataSource
    interface IDynamicDataSource
    interface IDataSource
Public Class LinqDataSource
Inherits DataSourceControl
Implements IDynamicDataSource
Public Class LinqDataSource
Inherits ContextDataSource
Implements IDynamicDataSource
Inheritance
Inheritance
Attributes
Implements

Examples

The following example shows a LinqDataSource control that retrieves data from an entity class named Products. The entity class could have been generated by using the O/R Designer or the SqlMetal.exe utility. The Where property is set to return only records that have a value in the Price property greater than 50. A GridView control is bound to the LinqDataSource control to display the data.

<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products" 
    Where="Price > 50"
    ID="LinqDataSource1" 
    runat="server">
</asp:LinqDataSource>
<asp:GridView 
    DataSourceID="LinqDataSource1"
    ID="GridView1" 
    runat="server">
</asp:GridView>
<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products" 
    Where="Price > 50"
    ID="LinqDataSource1" 
    runat="server">
</asp:LinqDataSource>
<asp:GridView 
    DataSourceID="LinqDataSource1"
    ID="GridView1" 
    runat="server">
</asp:GridView>

The following example shows a LinqDataSource control that enables users to update, delete, and insert records in the data source. A DetailsView control is bound to the LinqDataSource control and enables users to see and modify the data. Notice that no SQL commands are required in order to select, update, delete, or insert the records.

<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products" 
    EnableUpdate="true"
    EnableInsert="true"
    EnableDelete="true"
    ID="LinqDataSource1" 
    runat="server">
</asp:LinqDataSource>
<asp:DetailsView 
    DataKeyNames="ProductID"
    AutoGenerateEditButton="true"
    AutoGenerateDeleteButton="true"
    AutoGenerateInsertButton="true"
    AllowPaging="true"
    DataSourceID="LinqDataSource1"
    ID="GridView1" 
    runat="server">
</asp:DetailsView>
<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products" 
    EnableUpdate="true"
    EnableInsert="true"
    EnableDelete="true"
    ID="LinqDataSource1" 
    runat="server">
</asp:LinqDataSource>
<asp:DetailsView 
    DataKeyNames="ProductID"
    AutoGenerateEditButton="true"
    AutoGenerateDeleteButton="true"
    AutoGenerateInsertButton="true"
    AllowPaging="true"
    DataSourceID="LinqDataSource1"
    ID="GridView1" 
    runat="server">
</asp:DetailsView>

The following example shows an event handler for the Selecting event that sets the data object based on a value in the Web page.

public partial class Default3 : System.Web.UI.Page
{
    string[] citiesArray = 
    { 
        "Atlanta", 
        "Charlotte", 
        "Denver", 
        "New York", 
        "San Francisco" 
    };

    protected void Page_Load(object sender, EventArgs e)
    {
    }

    protected void LinqDataSource_Selecting(object sender, LinqDataSourceSelectEventArgs e)
    {
        var cities = from city in citiesArray
                     where city.CompareTo("B") > 0
                     select city;
        e.Result = cities;
        // Or we could set e.Result = citiesArray to return all rows.
    }
}
Partial Class Default3
    Inherits System.Web.UI.Page

    Dim citiesArray() As String = _
    { _
        "Atlanta", _
        "Charlotte", _
        "Denver", _
        "New York", _
        "San Francisco" _
    }


    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
       
    End Sub

    
    Protected Sub LinqDataSource_Selecting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LinqDataSourceSelectEventArgs) Handles LinqDataSource1.Selecting
        Dim cities = From city In citiesArray _
                     Where city > "B" _
                     Select city
        e.Result = cities
        ' Or we could set e.Result = citiesArray to return all rows.
    End Sub
    
End Class

The following example shows a LinqDataSource control that is configured to group by two columns. The Key property references an object that has two properties, ProductCategory and Color. The object represented by It is renamed (aliased) to Products. The renamed Products object contains a collection of the individual records in a grouping. Each instance will contain all the columns from the Products table.

<asp:LinqDataSource 
  ContextTypeName="ExampleDataContext" 
  TableName="Products" 
  GroupBy="new(ProductCategory, Color)"
  Select="new(Key,
          It As Products,
          Max(ListPrice) As MaxListPrice, 
          Min(ListPrice) As MinListPrice)"
  ID="LinqDataSource1" 
  runat="server">
</asp:LinqDataSource>
<asp:LinqDataSource 
  ContextTypeName="ExampleDataContext" 
  TableName="Products" 
  GroupBy="new(ProductCategory, Color)"
  Select="new(Key,
          It As Products,
          Max(ListPrice) As MaxListPrice, 
          Min(ListPrice) As MinListPrice)"
  ID="LinqDataSource1" 
  runat="server">
</asp:LinqDataSource>

The following example shows two ListView controls that display the data from the LinqDataSource control in the previous example. One ListView control displays the grouped data, and the other ListView control displays the individual names of products that belong to that group. The nested data-bound control's DataSource property is set to Products, which is the alias for the It object.

<asp:ListView 
    DataSourceID="LinqDataSource1" 
    ID="ListView1" runat="server">

    <LayoutTemplate>
      <table id="Table1" 
          style="background-color:Teal;color:White" 
          runat="server" 
          class="Layout">
          
        <thead>
          <tr>
            <th><b>Product Category</b></th>
            <th><b>Color</b></th>
            <th><b>Highest Price</b></th>
            <th><b>Lowest Price</b></th>
          </tr>
        </thead>
        <tr runat="server" id="itemPlaceholder">
        </tr>
        
      </table>
    </LayoutTemplate>

    <ItemTemplate>
      <tr>
        <td><%# Eval("key.ProductCategory") %></td>
        <td><%# Eval("key.Color") %></td>
        <td><%# Eval("MaxListPrice") %></td>
        <td><%# Eval("MinListPrice") %></td>
      </tr>
      <tr>
        
        <td colspan="4" style="width:100%;background-color:White;color:Black">
          <asp:ListView 
            DataSource='<%# Eval("Products") %>' 
            runat="server" 
            ID="ListView2">

            <LayoutTemplate>
              <div runat="server" id="itemPlaceholder" />
            </LayoutTemplate>

            <ItemTemplate>
              <%# Eval("ProductName") %><br />
            </ItemTemplate>

          </asp:ListView> 
        </td>
      </tr>
    </ItemTemplate>
  </asp:ListView>
<asp:ListView 
   DataSourceID="LinqDataSource1" 
   ID="ListView1" runat="server">

   <LayoutTemplate>
     <table id="Table1" 
         style="background-color:Teal;color:White" 
         runat="server" 
         class="Layout">
         
       <thead>
         <tr>
           <th><b>Product Category</b></th>
           <th><b>Color</b></th>
           <th><b>Highest Price</b></th>
           <th><b>Lowest Price</b></th>
         </tr>
       </thead>
       <tr runat="server" id="itemPlaceholder">
       </tr>
       
     </table>
   </LayoutTemplate>

   <ItemTemplate>
     <tr>
       <td><%# Eval("key.ProductCategory") %></td>
       <td><%# Eval("key.Color") %></td>
       <td><%# Eval("MaxListPrice") %></td>
       <td><%# Eval("MinListPrice") %></td>
     </tr>
     <tr>
       
       <td colspan="4" style="width:100%;background-color:White;color:Black">
         <asp:ListView 
           DataSource='<%# Eval("Products") %>' 
           runat="server" 
           ID="ListView2">

           <LayoutTemplate>
             <div runat="server" id="itemPlaceholder" />
           </LayoutTemplate>

           <ItemTemplate>
             <%# Eval("ProductName") %><br />
           </ItemTemplate>

         </asp:ListView> 
       </td>
     </tr>
   </ItemTemplate>
 </asp:ListView>

Remarks

In this topic:

Introduction

Language-Integrated Query (LINQ) is a query syntax that defines a set of query operators that enable traversal, filter, and projection operations to be expressed in a declarative way in any .NET-based programming language. The data object can be an in-memory data collection or an object that represents data from a database. You can retrieve or modify the data without having to write SQL commands for each operation.

The LinqDataSource control enables you to use LINQ in an ASP.NET Web page by setting properties in markup text. The LinqDataSource control uses LINQ to SQL to automatically generate the data commands. For more information about LINQ to SQL, see LINQ to SQL.

When you are retrieving data from an in-memory data collection, you set the ContextTypeName property to the class that contains the data collection. You set the TableName property to the property or field that returns the data collection. For example, you might have a class named Person that contains a property named FavoriteCities that returns an array of string values. In that case, you set the ContextTypeName property to Person and set the TableName property to FavoriteCities.

When you are querying a database, you must first create entity classes that represent the database and its tables. You can use the Object Relational Designer or the SqlMetal.exe utility to generate these classes. You then set the ContextTypeName property to the class that represents the database and set the TableName property to the property that represents the database table.

Order of Operations

The LinqDataSource control applies data operations in the following order:

  1. Where (specify which data records to return).

  2. Order By (sort).

  3. Group By (aggregate data records that share values).

  4. Order Groups By (sort grouped data).

  5. Select (specify which fields or properties to return).

  6. Auto-sort (sort data records by a property that the user has selected).

  7. Auto-page (retrieve a subset of data records that were selected by the user).

You can add conditions to the Where property to filter the data records that are returned from a query. If the Where property is not set, the LinqDataSource control retrieves every record from the data object.

Ordering Data

You use the OrderBy property to specify the names of properties from the returned data to sort by.

Note

When you use the LinqDataSource control with SQL Server 2000 or SQL Server Compact 3.5 and the AutoPage property is set to true, you must provide a value in the OrderBy property. By default, the AutoPage property is true. If you assign a value to the Select property, you must also include all identity columns in the list of properties that is returned in the query.

Grouping Data

You use the GroupBy property to specify which properties are used to consolidate data records that have the same values. When you group data, you can include Key and It, which are dynamically created properties, in the Select property. The Key property refers to the values in the property or properties that were used to group the data. For example, if you group by a property named Category, the Key property will contain all unique values in the Category property. The It property refers to a collection of individual records in a grouping of data. You can iterate over the It property to retrieve the individual records that have been consolidated in the grouping operation. For example, if you group by a property named Category, the It property contains all the individual records that share a common value in the Category property.

You use the OrderGroupsBy property to specify the properties to use for sorting the grouped data. When you group data, the OrderBy property specifies how the individual records within the grouped data are sorted.

By default, the LinqDataSource control retrieves values for all the properties from a data object. You use the Select property to specify which properties to return if you want to work with a subset of available properties. The Select operation is applied after the Where, Order By, and Group By operations. Therefore, if you create an aliased name in a Select clause, the alias is not available in the other clauses.

Data Modifications

You can specify whether data modifications are enabled by using the EnableDelete, EnableInsert, and EnableUpdate properties. The user interface for modifying data from a LinqDataSource control is typically provided through a data-bound control, such as a DetailsView control. In addition to setting EnableDelete, EnableInsert, or EnableUpdate to true, the following conditions are required to enable automatic data modifications:

You can restrict which properties are displayed in a data-bound control in two ways. You can either set the Select property to a subset of properties, or you can define the fields for a data-bound control by adding DataControlField controls. However, if you set the Select property, it means that automatic update, insert, and delete operations cannot be enabled. If you want to enable automatic data modifications while you work with a subset of available properties, do not set the Select property. Instead, retrieve all properties from the data object and manage which ones are displayed by using the data-bound control. When you use the DetailsView control or the GridView control, you must also set the AutoGenerateRows or AutoGenerateColumns properties to false. This prevents the data-bound control from automatically including buttons for editing and deleting the data. Any values that are not displayed in the data-bound control are stored in view state. They are passed unchanged to the data source when the data update is performed.

Evaluating Values at Run Time

If you have to evaluate values at run time for ordering, filtering, or grouping values, you can add parameters to the WhereParameters, GroupByParameters, OrderGroupsByParameters, or OrderByParameters collections.

If you want to specify default values, you can add parameters to the InsertParameters collection.

If you want to examine or modify values before the data operation is executed, you can handle the Deleting, Inserting, Selecting, or Updating events. You can also handle these events in order to cancel the data operation or to examine validation errors that occurred when you set properties in the data class based on user input.

To examine values after the data operation has finished, handle the Deleted, Inserted, Selected, or Updated events.

Working with Stored Procedures

You use the LinqDataSource control to retrieve data from a stored procedure by creating an event handler for the Selecting event. In the event handler, you call the method in the data context class that represents the stored procedure and set the result to the Result property of the LinqDataSourceSelectEventArgs object. If you want to enable automatic update, insert, and delete operations for the data, the type that is returned from the method must match the type that is specified in the TableName property. For more information about creating data context methods, see How to: Create DataContext methods mapped to stored procedures and functions (O/R Designer).

Declarative Syntax

<asp:LinqDataSource  
    AutoGenerateOrderByClause="True|False"  
    AutoGenerateWhereClause="True|False"  
    AutoPage="True|False"  
    AutoSort="True|False"  
    ContextTypeName="string"  
    EnableDelete="True|False"  
    EnableInsert="True|False"  
    EnableTheming="True|False"  
    EnableUpdate="True|False"  
    EnableViewState="True|False"  
    GroupBy="string"  
    ID="string"  
    OnContextCreated="ContextCreated event handler"  
    OnContextCreating="ContextCreating event handler"  
    OnContextDisposing="ContextDisposing event handler"  
    OnDataBinding="DataBinding event handler"  
    OnDeleted="Deleted event handler"  
    OnDeleting="Deleting event handler"  
    OnDisposed="Disposed event handler"  
    OnInit="Init event handler"  
    OnInserted="Inserted event handler"  
    OnInserting="Inserting event handler"  
    OnLoad="Load event handler"  
    OnPreRender="PreRender event handler"  
    OnSelected="Selected event handler"  
    OnSelecting="Selecting event handler"  
    OnUnload="Unload event handler"  
    OnUpdated="Updated event handler"  
    OnUpdating="Updating event handler"  
    OrderBy="string"  
    runat="server"  
    Select="string"  
    SkinID="string"  
    StoreOriginalValuesInViewState="True|False"  
    TableName="string"  
    Visible="True|False"  
    Where="string"  
>  
        <GroupByParameters />  
        <InsertParameters />  
        <OrderByParameters />  
        <SelectParameters />  
        <WhereParameters />  
</asp:LinqDataSource>  

Constructors

LinqDataSource()

Initializes a new instance of the LinqDataSource class.

Properties

Adapter

Gets the browser-specific adapter for the control.

(Inherited from Control)
AppRelativeTemplateSourceDirectory

Gets or sets the application-relative virtual directory of the Page or UserControl object that contains this control.

(Inherited from Control)
AutoGenerateOrderByClause

Gets or sets a value that indicates whether the LinqDataSource control dynamically creates an Order By clause based on values in the OrderByParameters collection.

AutoGenerateWhereClause

Gets or sets a value that indicates whether the LinqDataSource control dynamically creates a Where clause based on values defined in the WhereParameters collection.

AutoPage

Gets or sets a value that indicates whether the LinqDataSource control supports navigation through sections of the data at run time.

AutoSort

Gets or sets a value that indicates whether the LinqDataSource control supports sorting the data at run time.

BindingContainer

Gets the control that contains this control's data binding.

(Inherited from Control)
ChildControlsCreated

Gets a value that indicates whether the server control's child controls have been created.

(Inherited from Control)
ClientID

Gets the server control identifier generated by ASP.NET.

(Inherited from DataSourceControl)
ClientIDMode

This property is not used for data source controls.

(Inherited from DataSourceControl)
ClientIDSeparator

Gets a character value representing the separator character used in the ClientID property.

(Inherited from Control)
Context

Gets the HttpContext object associated with the server control for the current Web request.

(Inherited from Control)
ContextTypeName

Gets or sets the name of the type that contains the property whose value has the data that you want to retrieve.

Controls

Gets a ControlCollection object that represents the child controls for a specified server control in the UI hierarchy.

(Inherited from DataSourceControl)
DataItemContainer

Gets a reference to the naming container if the naming container implements IDataItemContainer.

(Inherited from Control)
DataKeysContainer

Gets a reference to the naming container if the naming container implements IDataKeysControl.

(Inherited from Control)
DeleteParameters

This property is not used by the LinqDataSource class.

DesignMode

Gets a value indicating whether a control is being used on a design surface.

(Inherited from Control)
EnableDelete

Gets or sets a value that indicates whether data records can be deleted through the LinqDataSource control.

EnableInsert

Gets or sets a value that indicates whether data records can be inserted through the LinqDataSource control.

EnableObjectTracking

Gets or sets the value that indicates whether changes to the data context object are tracked.

EnableTheming

Gets a value indicating whether this control supports themes.

(Inherited from DataSourceControl)
EnableUpdate

Gets or sets a value that indicates whether data records can be updated through the LinqDataSource control.

EnableViewState

Gets or sets a value indicating whether the server control persists its view state, and the view state of any child controls it contains, to the requesting client.

(Inherited from Control)
EntitySetName

Gets or sets the name of the property or field in the data source object that represents a data collection.

(Inherited from ContextDataSource)
EntityTypeName

Gets or sets the name of the type that is created for Insert, Delete, and Update operations.

(Inherited from ContextDataSource)
Events

Gets a list of event handler delegates for the control. This property is read-only.

(Inherited from Control)
GroupBy

Gets or sets a value that specifies which properties are used for grouping the retrieved data.

GroupByParameters

Gets the collection of parameters that are used to create the Group By clause.

HasChildViewState

Gets a value indicating whether the current server control's child controls have any saved view-state settings.

(Inherited from Control)
ID

Gets or sets the programmatic identifier assigned to the server control.

(Inherited from Control)
IdSeparator

Gets the character used to separate control identifiers.

(Inherited from Control)
InsertParameters

Gets the collection of parameters that are used during an insert operation.

IsChildControlStateCleared

Gets a value indicating whether controls contained within this control have control state.

(Inherited from Control)
IsTrackingViewState

Gets a value that indicates whether the server control is saving changes to its view state.

(Inherited from Control)
IsViewStateEnabled

Gets a value indicating whether view state is enabled for this control.

(Inherited from Control)
LoadViewStateByID

Gets a value indicating whether the control participates in loading its view state by ID instead of index.

(Inherited from Control)
NamingContainer

Gets a reference to the server control's naming container, which creates a unique namespace for differentiating between server controls with the same ID property value.

(Inherited from Control)
OrderBy

Gets or sets a value that specifies which fields are used for ordering the retrieved data.

OrderByParameters

Gets the collection of parameters that are used to create the Order By clause.

OrderGroupsBy

Gets or sets the fields that are used for ordering grouped data.

OrderGroupsByParameters

Gets the collection of parameters that are used to create the Order Groups By clause.

Page

Gets a reference to the Page instance that contains the server control.

(Inherited from Control)
Parent

Gets a reference to the server control's parent control in the page control hierarchy.

(Inherited from Control)
RenderingCompatibility

Gets a value that specifies the ASP.NET version that rendered HTML will be compatible with.

(Inherited from Control)
Select

Gets or sets the properties and calculated values that are included in the retrieved data.

SelectParameters

Gets the collection of parameters that are used during a data-retrieval operation.

Site

Gets information about the container that hosts the current control when rendered on a design surface.

(Inherited from Control)
SkinID

Gets the skin to apply to the DataSourceControl control.

(Inherited from DataSourceControl)
StoreOriginalValuesInViewState

Gets or sets a value that indicates whether the data from the data source should be stored in view state to make sure that the data has not been changed by another process before it is updated or deleted.

TableName

Gets or sets the name of the property or field in the data context class that represents a data collection.

TemplateControl

Gets or sets a reference to the template that contains this control.

(Inherited from Control)
TemplateSourceDirectory

Gets the virtual directory of the Page or UserControl that contains the current server control.

(Inherited from Control)
UniqueID

Gets the unique, hierarchically qualified identifier for the server control.

(Inherited from Control)
UpdateParameters

This collection is not used by the LinqDataSource class.

ValidateRequestMode

Gets or sets a value that indicates whether the control checks client input from the browser for potentially dangerous values.

(Inherited from Control)
ViewState

Gets a dictionary of state information that allows you to save and restore the view state of a server control across multiple requests for the same page.

(Inherited from Control)
ViewStateIgnoresCase

Gets a value that indicates whether the StateBag object is case-insensitive.

(Inherited from Control)
ViewStateMode

Gets or sets the view-state mode of this control.

(Inherited from Control)
Visible

Gets or sets a value indicating whether the control is visually displayed.

(Inherited from DataSourceControl)
Where

Gets or sets a value that specifies what conditions must be true for a record to be included in the retrieved data.

WhereParameters

Gets the collection of parameters that is used to create the Where clause.

Methods

AddedControl(Control, Int32)

Called after a child control is added to the Controls collection of the Control object.

(Inherited from Control)
AddParsedSubObject(Object)

Notifies the server control that an element, either XML or HTML, was parsed, and adds the element to the server control's ControlCollection object.

(Inherited from Control)
ApplyStyleSheetSkin(Page)

Applies the style properties that are defined in the page style sheet to the control.

(Inherited from DataSourceControl)
BeginRenderTracing(TextWriter, Object)

Begins design-time tracing of rendering data.

(Inherited from Control)
BuildProfileTree(String, Boolean)

Gathers information about the server control and delivers it to the Trace property to be displayed when tracing is enabled for the page.

(Inherited from Control)
ClearCachedClientID()

Sets the cached ClientID value to null.

(Inherited from Control)
ClearChildControlState()

Deletes the control-state information for the server control's child controls.

(Inherited from Control)
ClearChildState()

Deletes the view-state and control-state information for all the server control's child controls.

(Inherited from Control)
ClearChildViewState()

Deletes the view-state information for all the server control's child controls.

(Inherited from Control)
ClearEffectiveClientIDMode()

Sets the ClientIDMode property of the current control instance and of any child controls to Inherit.

(Inherited from Control)
CreateChildControls()

Called by the ASP.NET page framework to notify server controls that use composition-based implementation to create any child controls they contain in preparation for posting back or rendering.

(Inherited from Control)
CreateControlCollection()

Creates a collection to store child controls.

(Inherited from DataSourceControl)
CreateQueryableView()

Returns a queryable view.

CreateView()

Creates a new instance of the LinqDataSourceView class that is associated with this control.

DataBind()

Binds a data source to the invoked server control and all its child controls.

(Inherited from Control)
DataBind(Boolean)

Binds a data source to the invoked server control and all its child controls with an option to raise the DataBinding event.

(Inherited from Control)
DataBindChildren()

Binds a data source to the server control's child controls.

(Inherited from Control)
Delete(IDictionary, IDictionary)

Performs a delete operation.

Dispose()

Enables a server control to perform final clean up before it is released from memory.

(Inherited from Control)
EndRenderTracing(TextWriter, Object)

Ends design-time tracing of rendering data.

(Inherited from Control)
EnsureChildControls()

Determines whether the server control contains child controls. If it does not, it creates child controls.

(Inherited from Control)
EnsureID()

Creates an identifier for controls that do not have an identifier assigned.

(Inherited from Control)
Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
FindControl(String)

Searches the current naming container for a server control with the specified id parameter.

(Inherited from DataSourceControl)
FindControl(String, Int32)

Searches the current naming container for a server control with the specified id and an integer, specified in the pathOffset parameter, which aids in the search. You should not override this version of the FindControl method.

(Inherited from Control)
Focus()

Sets input focus to the control.

(Inherited from DataSourceControl)
GetDesignModeState()

Gets design-time data for a control.

(Inherited from Control)
GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetRouteUrl(Object)

Gets the URL that corresponds to a set of route parameters.

(Inherited from Control)
GetRouteUrl(RouteValueDictionary)

Gets the URL that corresponds to a set of route parameters.

(Inherited from Control)
GetRouteUrl(String, Object)

Gets the URL that corresponds to a set of route parameters and a route name.

(Inherited from Control)
GetRouteUrl(String, RouteValueDictionary)

Gets the URL that corresponds to a set of route parameters and a route name.

(Inherited from Control)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
GetUniqueIDRelativeTo(Control)

Returns the prefixed portion of the UniqueID property of the specified control.

(Inherited from Control)
GetView(String)

Returns the data source view that is associated with the LinqDataSource object.

GetView(String)

Gets the data source view that is associated with the QueryableDataSource object.

(Inherited from QueryableDataSource)
GetViewNames()

Returns a collection of names that represents the list of view objects that are associated with the LinqDataSource control.

GetViewNames()

Gets a collection of names that represent views that are associated with the QueryableDataSource control.

(Inherited from QueryableDataSource)
HasControls()

Determines if the server control contains any child controls.

(Inherited from DataSourceControl)
HasEvents()

Returns a value indicating whether events are registered for the control or any child controls.

(Inherited from Control)
Insert(IDictionary)

Performs an insert operation.

IsLiteralContent()

Determines if the server control holds only literal content.

(Inherited from Control)
LoadControlState(Object)

Restores control-state information from a previous page request that was saved by the SaveControlState() method.

(Inherited from Control)
LoadViewState(Object)

Loads the state of the values in the LinqDataSource control that must be persisted.

LoadViewState(Object)

Loads the state of the values in the QueryableDataSource control that must be persisted.

(Inherited from QueryableDataSource)
MapPathSecure(String)

Retrieves the physical path that a virtual path, either absolute or relative, maps to.

(Inherited from Control)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
OnBubbleEvent(Object, EventArgs)

Determines whether the event for the server control is passed up the page's UI server control hierarchy.

(Inherited from Control)
OnDataBinding(EventArgs)

Raises the DataBinding event.

(Inherited from Control)
OnInit(EventArgs)

Initializes the LinqDataSource object.

OnLoad(EventArgs)

Raises the Load event.

(Inherited from Control)
OnPreRender(EventArgs)

Raises the PreRender event.

(Inherited from Control)
OnUnload(EventArgs)

Raises the Unload event.

OpenFile(String)

Gets a Stream used to read a file.

(Inherited from Control)
RaiseBubbleEvent(Object, EventArgs)

Assigns any sources of the event and its information to the control's parent.

(Inherited from Control)
RaiseDataSourceChangedEvent(EventArgs)

Raises the DataSourceChanged event.

(Inherited from DataSourceControl)
RaiseViewChanged()

Calls the OnDataSourceViewChanged(EventArgs) method of the DataSourceView class.

(Inherited from QueryableDataSource)
RemovedControl(Control)

Called after a child control is removed from the Controls collection of the Control object.

(Inherited from Control)
Render(HtmlTextWriter)

Sends server control content to a provided HtmlTextWriter object, which writes the content to be rendered on the client.

(Inherited from Control)
RenderChildren(HtmlTextWriter)

Outputs the content of a server control's children to a provided HtmlTextWriter object, which writes the content to be rendered on the client.

(Inherited from Control)
RenderControl(HtmlTextWriter)

Outputs server control content to a provided HtmlTextWriter object and stores tracing information about the control if tracing is enabled.

(Inherited from DataSourceControl)
RenderControl(HtmlTextWriter, ControlAdapter)

Outputs server control content to a provided HtmlTextWriter object using a provided ControlAdapter object.

(Inherited from Control)
ResolveAdapter()

Gets the control adapter responsible for rendering the specified control.

(Inherited from Control)
ResolveClientUrl(String)

Gets a URL that can be used by the browser.

(Inherited from Control)
ResolveUrl(String)

Converts a URL into one that is usable on the requesting client.

(Inherited from Control)
SaveControlState()

Saves any server control state changes that have occurred since the time the page was posted back to the server.

(Inherited from Control)
SaveViewState()

Saves the current view state of the LinqDataSource control.

SaveViewState()

Saves the current view state of the QueryableDataSource control.

(Inherited from QueryableDataSource)
SetDesignModeState(IDictionary)

Sets design-time data for a control.

(Inherited from Control)
SetRenderMethodDelegate(RenderMethod)

Assigns an event handler delegate to render the server control and its content into its parent control.

(Inherited from Control)
SetTraceData(Object, Object)

Sets trace data for design-time tracing of rendering data, using the trace data key and the trace data value.

(Inherited from Control)
SetTraceData(Object, Object, Object)

Sets trace data for design-time tracing of rendering data, using the traced object, the trace data key, and the trace data value.

(Inherited from Control)
ToString()

Returns a string that represents the current object.

(Inherited from Object)
TrackViewState()

Tracks view state changes to the LinqDataSource control so that the changes can be stored in the StateBag object for the control.

TrackViewState()

Tracks view-state changes of the QueryableDataSource control so that the changes can be stored in the StateBag object for the control.

(Inherited from QueryableDataSource)
Update(IDictionary, IDictionary, IDictionary)

Performs an update operation.

UpdateParameterVales()

Updates the parameter values that have changed since the previous request.

(Inherited from QueryableDataSource)

Events

ContextCreated

Occurs after an instance of the context type object is created.

ContextCreating

Occurs before an instance of the context type object is created.

ContextDisposing

Occurs before disposing the context type object.

DataBinding

Occurs when the server control binds to a data source.

(Inherited from Control)
Deleted

Occurs when a delete operation has finished.

Deleting

Occurs before a delete operation.

Disposed

Occurs when a server control is released from memory, which is the last stage of the server control lifecycle when an ASP.NET page is requested.

(Inherited from Control)
Init

Occurs when the server control is initialized, which is the first step in its lifecycle.

(Inherited from Control)
Inserted

Occurs when an insert operation has finished.

Inserting

Occurs before an insert operation.

Load

Occurs when the server control is loaded into the Page object.

(Inherited from Control)
PreRender

Occurs after the Control object is loaded but prior to rendering.

(Inherited from Control)
QueryCreated

Occurs when a query is added to or removed from a data source control.

(Inherited from QueryableDataSource)
Selected

Occurs when a data retrieval operation has finished.

Selecting

Occurs before a data-retrieval operation.

Unload

Occurs when the server control is unloaded from memory.

(Inherited from Control)
Updated

Occurs when an update operation has finished.

Updating

Occurs before an update operation.

Explicit Interface Implementations

IControlBuilderAccessor.ControlBuilder

For a description of this member, see ControlBuilder.

(Inherited from Control)
IControlDesignerAccessor.GetDesignModeState()

For a description of this member, see GetDesignModeState().

(Inherited from Control)
IControlDesignerAccessor.SetDesignModeState(IDictionary)

For a description of this member, see SetDesignModeState(IDictionary).

(Inherited from Control)
IControlDesignerAccessor.SetOwnerControl(Control)

For a description of this member, see SetOwnerControl(Control).

(Inherited from Control)
IControlDesignerAccessor.UserData

For a description of this member, see UserData.

(Inherited from Control)
IDataBindingsAccessor.DataBindings

For a description of this member, see DataBindings.

(Inherited from Control)
IDataBindingsAccessor.HasDataBindings

For a description of this member, see HasDataBindings.

(Inherited from Control)
IDataSource.DataSourceChanged

Occurs when a data source control has changed in a way that affects data-bound controls.

(Inherited from DataSourceControl)
IDataSource.GetView(String)

Gets the named DataSourceView object associated with the DataSourceControl control. Some data source controls support only one view, while others support more than one.

(Inherited from DataSourceControl)
IDataSource.GetViewNames()

Gets a collection of names, representing the list of DataSourceView objects associated with the DataSourceControl control.

(Inherited from DataSourceControl)
IDynamicDataSource.ContextType

For a description of this member, see IDynamicDataSource.

IDynamicDataSource.EntitySetName

For a description of this member, see IDynamicDataSource.

IDynamicDataSource.Exception

For a description of this member, see IDynamicDataSource.

IExpressionsAccessor.Expressions

For a description of this member, see Expressions.

(Inherited from Control)
IExpressionsAccessor.HasExpressions

For a description of this member, see HasExpressions.

(Inherited from Control)
IListSource.ContainsListCollection

Indicates whether the data source control is associated with one or more lists of data.

(Inherited from DataSourceControl)
IListSource.GetList()

Gets a list of data source controls that can be used as sources of lists of data.

(Inherited from DataSourceControl)
IParserAccessor.AddParsedSubObject(Object)

For a description of this member, see AddParsedSubObject(Object).

(Inherited from Control)

Extension Methods

ExpandDynamicWhereParameters(IDynamicDataSource)

Expands dynamic filters into Where parameters that are usable by the data source.

FindDataSourceControl(Control)

Returns the data source that is associated with the data control for the specified control.

FindFieldTemplate(Control, String)

Returns the field template for the specified column in the specified control's naming container.

FindMetaTable(Control)

Returns the metatable object for the containing data control.

GetDefaultValues(IDataSource)

Gets the collection of the default values for the specified data source.

GetMetaTable(IDataSource)

Gets the metadata for a table in the specified data source object.

GetTable(IDynamicDataSource)

Returns the MetaTable object that is associated with the specified data source control.

LoadWith<TEntity>(LinqDataSource)

Sets the DataLoadOptions value of a LINQ-to-SQL data source to force all the foreign-key entities to be loaded.

LoadWithForeignKeys(LinqDataSource, Type)

Sets the DataLoadOptions value of a LINQ-to-SQL data source to force all the foreign-key entities to be loaded.

TryGetMetaTable(IDataSource, MetaTable)

Determines whether table metadata is available.

Applies to

See also