SqlDataSource
SqlDataSource
SqlDataSource
SqlDataSource
Class
Definition
Represents an SQL database to data-bound controls.
public ref class SqlDataSource : System::Web::UI::DataSourceControl
[System.Drawing.ToolboxBitmap(typeof(System.Web.UI.WebControls.SqlDataSource))]
public class SqlDataSource : System.Web.UI.DataSourceControl
type SqlDataSource = class
inherit DataSourceControl
Public Class SqlDataSource
Inherits DataSourceControl
- Inheritance
-
SqlDataSourceSqlDataSourceSqlDataSourceSqlDataSource
- Derived
- Attributes
Examples
This section contains four code examples:
The first code example demonstrates how to display data from SQL Server in a GridView control using declarative syntax.
The second code example demonstrates how to display data from an ODBC-compliant database in a GridView control using declarative syntax.
The third code example demonstrates how to display and update data in a GridView control.
The fourth code example demonstrates how to display and update data in a DropDownList control.
Note
These examples show how to use declarative syntax for data access. For information about how to access data by using code instead of markup, see Accessing data in Visual Studio.
The following code example demonstrates how to use a SqlDataSource control declaratively to retrieve data from SQL Server and display it in a GridView control.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
DataSourceMode="DataReader"
ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
SelectCommand="SELECT FirstName, LastName, Title FROM Employees">
</asp:SqlDataSource>
<asp:GridView
id="GridView1"
runat="server"
DataSourceID="SqlDataSource1">
</asp:GridView>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
DataSourceMode="DataReader"
ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
SelectCommand="SELECT FirstName, LastName, Title FROM Employees">
</asp:SqlDataSource>
<asp:GridView
id="GridView1"
runat="server"
DataSourceID="SqlDataSource1">
</asp:GridView>
</form>
</body>
</html>
The following code example demonstrates how to use a SqlDataSource control declaratively to retrieve data from an ODBC-compliant database and display it in a GridView control. The ProviderName property is the name of the .NET Framework Data Provider for ODBC, which is System.Data.Odbc.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<!-- This example uses a Northwind database that is hosted by an ODBC-compliant
database. To run this sample, create an ODBC DSN to any database that hosts
the Northwind database, including Microsoft SQL Server or Microsoft Access,
change the name of the DSN in the ConnectionString, and view the page.
-->
<form id="form1" runat="server">
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
ProviderName="System.Data.Odbc"
DataSourceMode="DataReader"
ConnectionString="dsn=myodbc3dsn;"
SelectCommand="SELECT FirstName, LastName, Title FROM Employees">
</asp:SqlDataSource>
<asp:GridView
id="GridView1"
runat="server"
DataSourceID="SqlDataSource1">
</asp:GridView>
</form>
</body>
</html>
<%@Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<!-- This example uses a Northwind database that is hosted by an ODBC-compliant
database. To run this sample, create an ODBC DSN to any database that hosts
the Northwind database, including Microsoft SQL Server or Microsoft Access,
change the name of the DSN in the ConnectionString, and view the page.
-->
<form id="form1" runat="server">
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
ProviderName="System.Data.Odbc"
DataSourceMode="DataReader"
ConnectionString="dsn=myodbc3dsn;"
SelectCommand="SELECT FirstName, LastName, Title FROM Employees">
</asp:SqlDataSource>
<asp:GridView
id="GridView1"
runat="server"
DataSourceID="SqlDataSource1">
</asp:GridView>
</form>
</body>
</html>
The following code example demonstrates a common display and update scenario with the GridView control. As with the previous examples, data from the Northwind database is displayed in the GridView control. Additionally, because an UpdateCommand property is specified and the AutoGenerateEditButton property is set to true
, you can edit and update the records with no additional code. The GridView control automatically handles adding parameters to the UpdateParameters collection and calls the Update method when the Update button in the GridView control is clicked.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
DataSourceMode="DataSet"
ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
SelectCommand="SELECT EmployeeID,FirstName,LastName,Title FROM Employees"
UpdateCommand="Update Employees SET FirstName=@FirstName,LastName=@LastName,Title=@Title WHERE EmployeeID=@EmployeeID">
</asp:SqlDataSource>
<asp:GridView
id="GridView1"
runat="server"
AutoGenerateColumns="False"
DataKeyNames="EmployeeID"
AutoGenerateEditButton="True"
DataSourceID="SqlDataSource1">
<columns>
<asp:BoundField HeaderText="First Name" DataField="FirstName" />
<asp:BoundField HeaderText="Last Name" DataField="LastName" />
<asp:BoundField HeaderText="Title" DataField="Title" />
</columns>
</asp:GridView>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
DataSourceMode="DataSet"
ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
SelectCommand="SELECT EmployeeID,FirstName,LastName,Title FROM Employees"
UpdateCommand="Update Employees SET FirstName=@FirstName,LastName=@LastName,Title=@Title WHERE EmployeeID=@EmployeeID">
</asp:SqlDataSource>
<asp:GridView
id="GridView1"
runat="server"
AutoGenerateColumns="False"
DataKeyNames="EmployeeID"
AutoGenerateEditButton="True"
DataSourceID="SqlDataSource1">
<columns>
<asp:BoundField HeaderText="First Name" DataField="FirstName" />
<asp:BoundField HeaderText="Last Name" DataField="LastName" />
<asp:BoundField HeaderText="Title" DataField="Title" />
</columns>
</asp:GridView>
</form>
</body>
</html>
The following code example demonstrates a common display and update scenario with the DropDownList and TextBox controls. The DropDownList control does not automatically add update parameters to the UpdateParameters collection nor call the Update method, so you must do so. The update parameters are specified declaratively and you can add an event handler to perform the Update operation when an event is raised.
Important
This example includes a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see Script Exploits Overview.
<%@Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private void On_Click(Object source, EventArgs e) {
try {
SqlDataSource1.Update();
}
catch (Exception except) {
// Handle the Exception.
}
Label2.Text="The record was updated successfully!";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
SelectCommand="SELECT EmployeeID, LastName, Address FROM Employees"
UpdateCommand="UPDATE Employees SET Address=@Address WHERE EmployeeID=@EmployeeID">
<UpdateParameters>
<asp:ControlParameter Name="Address" ControlId="TextBox1" PropertyName="Text"/>
<asp:ControlParameter Name="EmployeeID" ControlId="DropDownList1" PropertyName="SelectedValue"/>
</UpdateParameters>
</asp:SqlDataSource>
<asp:DropDownList
id="DropDownList1"
runat="server"
DataTextField="LastName"
DataValueField="EmployeeID"
DataSourceID="SqlDataSource1">
</asp:DropDownList>
<br />
<asp:Label id="Label1" runat="server" Text="Enter a new address for the selected user."
AssociatedControlID="TextBox1" />
<asp:TextBox id="TextBox1" runat="server" />
<asp:Button id="Submit" runat="server" Text="Submit" OnClick="On_Click" />
<br /><asp:Label id="Label2" runat="server" Text="" />
</form>
</body>
</html>
<%@Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub On_Click(ByVal source As Object, ByVal e As EventArgs)
Try
SqlDataSource1.Update()
Catch except As Exception
' Handle the Exception.
End Try
Label2.Text="The record was updated successfully!"
End Sub 'On_Click
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
SelectCommand="SELECT EmployeeID, LastName, Address FROM Employees"
UpdateCommand="UPDATE Employees SET Address=@Address WHERE EmployeeID=@EmployeeID">
<UpdateParameters>
<asp:ControlParameter Name="Address" ControlId="TextBox1" PropertyName="Text"/>
<asp:ControlParameter Name="EmployeeID" ControlId="DropDownList1" PropertyName="SelectedValue"/>
</UpdateParameters>
</asp:SqlDataSource>
<asp:DropDownList
id="DropDownList1"
runat="server"
DataTextField="LastName"
DataValueField="EmployeeID"
DataSourceID="SqlDataSource1">
</asp:DropDownList>
<br />
<asp:Label id="Label1" runat="server" Text="Enter a new address for the selected user."
AssociatedControlID="TextBox1" />
<asp:TextBox id="TextBox1" runat="server" />
<asp:Button id="Submit" runat="server" Text="Submit" OnClick="On_Click" />
<br /><asp:Label id="Label2" runat="server" Text="" />
</form>
</body>
</html>
Remarks
In this topic:
Introduction
The SqlDataSource data source control represents data in an SQL relational database to data-bound controls. You can use the SqlDataSource control in conjunction with a data-bound control to retrieve data from a relational database and to display, edit, and sort data on a Web page with little or no code.
Data Connections
To connect to a database, you must set the ConnectionString property to a valid connection string. The SqlDataSource can support any SQL relational database that can be connected to using an ADO.NET provider, such as the SqlClient
, OleDb
, Odbc
, or OracleClient
provider. For information about how to secure connection strings, see How To: Secure Connection Strings when Using Data Source Controls.
To retrieve data from an underlying database, set the SelectCommand property with an SQL query. If the database that the SqlDataSource is associated with supports stored procedures, you can set the SelectCommand property to the name of a stored procedure. The SQL query that you specify can also be a parameterized query. You can add Parameter objects that are associated with a parameterized query to the SelectParameters collection. For more information about parameterized SQL queries and their syntax, see Using Parameters with Data Source Controls for Filtering.
The SqlDataSource control retrieves data whenever the Select method is called. This method provides programmatic access to the method that is specified by SelectMethod property. The Select method is automatically called by controls that are bound to the SqlDataSource when their DataBind method is called. If you set the DataSourceID property of a data-bound control, the control automatically binds to data from the data source, as required. Setting the DataSourceID
property is the recommended method for binding an ObjectDataSource control to a data-bound control. Alternatively, you can use the DataSource
property, but then you must explicitly call the DataBind method of the data-bound control. Some examples of data-bound controls that can use SqlDataSource are DataGrid, DetailsView, DataList, and DropDownList. You can call the Select method programmatically at any time to retrieve data from the underlying database.
In declarative and programmatic ASP.NET scenarios, you can set the DataSourceID property of the data-bound control to the ID of the SqlDataSource control. You can also assign an instance of the SqlDataSource class to the DataSource property of the data-bound control. For more information about binding data-bound control to data source controls, see ASP.NET Data Access Options.
Performing Data Operations
Depending on the capabilities of the underlying database product and the configuration of the instance of the SqlDataSource class, you can perform data operations, such as updates, inserts, and deletes. To perform these data operations, set the appropriate command text and any associated parameters for the operation that you want to perform. For example, for an update operation, set the UpdateCommand property to an SQL string or the name of a stored procedure and add any required parameters to the UpdateParameters collection. The update is performed when the Update method is called, either explicitly by your code or automatically by a data-bound control. The same general pattern is followed for Delete and Insert operations.
The SQL queries and commands that you use in the SelectCommand, UpdateCommand, InsertCommand, and DeleteCommand properties can be parameterized. This means that the query or command can use placeholders instead of literal values and bind the placeholders to application or user-defined variables. You can bind parameters in SQL queries to Session variables, values that are passed on the query string for a Web Forms page, the property values of other server controls, and more. For more information about how to use parameters in SQL queries with the SqlDataSource, see Using Parameters with Data Source Controls for Filtering and Using Parameters with the SqlDataSource Control.
Note
By default, if one of the parameters is null
when you execute a Select
command, no data will be returned and no exception will be thrown. You can change this behavior by setting the CancelSelectOnNullParameter property to false
.
Data Provider
By default, the SqlDataSource control works with the .NET Framework Data Provider for SQL Server, but SqlDataSource is not Microsoft SQL Server-specific. You can connect the SqlDataSource control with any database product for which there is a managed ADO.NET provider. When used with the System.Data.OleDb provider, the SqlDataSource can work with any OLE DB-compliant database. When used with the System.Data.Odbc provider, the SqlDataSource can be used with any ODBC driver and database, including IBM DB2, MySQL, and PostgreSQL. When used with the System.Data.OracleClient provider, the SqlDataSource can work with Oracle 8.1.7 databases and later. The list of allowable providers is registered in the DbProviderFactories
section of the configuration file, either in the Machine.config or Web.config file. For more information, see Selecting Data Using the SqlDataSource Control.
Caching
If you display data on your page using a SqlDataSource control, you can increase the performance of the page by using the data caching capabilities of the data source control. Caching reduces the processing load on the database servers at the expense of memory on the Web server; in most cases, this is a good trade-off. The SqlDataSource automatically caches data when the EnableCaching property is set to true
and the CacheDuration property is set to the number of seconds that the cache stores data before the cache entry is discarded. You can also specify a CacheExpirationPolicy and an optional SqlCacheDependency value.
Additional Features
The SqlDataSource provides additional capabilities, as listed in the following table.
Capability | Requirements |
---|---|
Caching | Set the DataSourceMode property to the DataSet value, the EnableCaching property to true , and the CacheDuration and CacheExpirationPolicy properties according to the caching behavior you want for your cached data. |
Deleting | Set the DeleteCommand property to an SQL statement used to delete data. This statement is typically parameterized. |
Filtering | Set the DataSourceMode property to the DataSet value. Set the FilterExpression property to a filtering expression used to filter the data when the Select method is called. |
Inserting | Set the InsertCommand property to an SQL statement used to insert data. This statement is typically parameterized. |
Paging | Not currently supported by the SqlDataSource, however some data-bound controls, such as GridView, support paging when you set the DataSourceMode property to the DataSet value. |
Selecting | Set the SelectCommand property to an SQL statement used to retrieve data. |
Sorting | Set the DataSourceMode property to DataSet. |
Updating | Set the UpdateCommand property to an SQL statement used to update data. This statement is typically parameterized. |
Data Source View
As with all data source controls, the SqlDataSource control is associated with a data source view class. The SqlDataSource control has only one associated SqlDataSourceView, and it is always named Table
.
There is no visual rendering of the SqlDataSource control; it is implemented as a control so that you can create it declaratively and, optionally, to allow it to participate in state management. As a result, the SqlDataSource does not support visual features, such as the ones that are provided by the EnableTheming or SkinID property.
Declarative Syntax
<asp:SqlDataSource
CacheDuration="string|Infinite"
CacheExpirationPolicy="Absolute|Sliding"
CacheKeyDependency="string"
CancelSelectOnNullParameter="True|False"
ConflictDetection="OverwriteChanges|CompareAllValues"
ConnectionString="string"
DataSourceMode="DataReader|DataSet"
DeleteCommand="string"
DeleteCommandType="Text|StoredProcedure"
EnableCaching="True|False"
EnableTheming="True|False"
EnableViewState="True|False"
FilterExpression="string"
ID="string"
InsertCommand="string"
InsertCommandType="Text|StoredProcedure"
OldValuesParameterFormatString="string"
OnDataBinding="DataBinding event handler"
OnDeleted="Deleted event handler"
OnDeleting="Deleting event handler"
OnDisposed="Disposed event handler"
OnFiltering="Filtering 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"
ProviderName="string|System.Data.Odbc|System.Data.OleDb|
System.Data.OracleClient|System.Data.SqlClient|
Microsoft.SqlServerCe.Client"
runat="server"
SelectCommand="string"
SelectCommandType="Text|StoredProcedure"
SkinID="string"
SortParameterName="string"
SqlCacheDependency="string"
UpdateCommand="string"
UpdateCommandType="Text|StoredProcedure"
Visible="True|False"
>
<DeleteParameters>
<asp:ControlParameter
ControlID="string"
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
PropertyName="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:CookieParameter
ConvertEmptyStringToNull="True|False"
CookieName="string"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:FormParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
FormField="string"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:Parameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:ProfileParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
PropertyName="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:QueryStringParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
QueryStringField="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:SessionParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
SessionField="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
</DeleteParameters>
<FilterParameters>
<asp:ControlParameter
ControlID="string"
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
PropertyName="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:CookieParameter
ConvertEmptyStringToNull="True|False"
CookieName="string"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:FormParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
FormField="string"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:Parameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:ProfileParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
PropertyName="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:QueryStringParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
QueryStringField="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:SessionParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
SessionField="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
</FilterParameters>
<InsertParameters>
<asp:ControlParameter
ControlID="string"
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
PropertyName="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:CookieParameter
ConvertEmptyStringToNull="True|False"
CookieName="string"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:FormParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
FormField="string"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:Parameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:ProfileParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
PropertyName="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:QueryStringParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
QueryStringField="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:SessionParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
SessionField="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
</InsertParameters>
<SelectParameters>
<asp:ControlParameter
ControlID="string"
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
PropertyName="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:CookieParameter
ConvertEmptyStringToNull="True|False"
CookieName="string"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:FormParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
FormField="string"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:Parameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:ProfileParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
PropertyName="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:QueryStringParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
QueryStringField="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:SessionParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
SessionField="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
</SelectParameters>
<UpdateParameters>
<asp:ControlParameter
ControlID="string"
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
PropertyName="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:CookieParameter
ConvertEmptyStringToNull="True|False"
CookieName="string"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:FormParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
FormField="string"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:Parameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:ProfileParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
PropertyName="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:QueryStringParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
QueryStringField="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
<asp:SessionParameter
ConvertEmptyStringToNull="True|False"
DefaultValue="string"
Direction="Input|Output|InputOutput|ReturnValue"
Name="string"
SessionField="string"
Size="integer"
Type="Empty|Object|DBNull|Boolean|Char|SByte|
Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
Single|Double|Decimal|DateTime|String"
/>
</UpdateParameters>
</asp:SqlDataSource>
Constructors
SqlDataSource() SqlDataSource() SqlDataSource() SqlDataSource() |
Initializes a new instance of the SqlDataSource class. |
SqlDataSource(String, String) SqlDataSource(String, String) SqlDataSource(String, String) SqlDataSource(String, String) |
Initializes a new instance of the SqlDataSource class with the specified connection string and Select command. |
SqlDataSource(String, String, String) SqlDataSource(String, String, String) SqlDataSource(String, String, String) SqlDataSource(String, String, String) |
Initializes a new instance of the SqlDataSource class with the specified connection string and Select command. |
Properties
Adapter Adapter Adapter Adapter |
Gets the browser-specific adapter for the control. (Inherited from Control) |
AppRelativeTemplateSourceDirectory AppRelativeTemplateSourceDirectory AppRelativeTemplateSourceDirectory AppRelativeTemplateSourceDirectory |
Gets or sets the application-relative virtual directory of the Page or UserControl object that contains this control. (Inherited from Control) |
BindingContainer BindingContainer BindingContainer BindingContainer |
Gets the control that contains this control's data binding. (Inherited from Control) |
CacheDuration CacheDuration CacheDuration CacheDuration |
Gets or sets the length of time, in seconds, that the data source control caches data that is retrieved by the Select(DataSourceSelectArguments) method. |
CacheExpirationPolicy CacheExpirationPolicy CacheExpirationPolicy CacheExpirationPolicy |
Gets or sets the cache expiration behavior that, when combined with the duration, describes the behavior of the cache that the data source control uses. |
CacheKeyDependency CacheKeyDependency CacheKeyDependency CacheKeyDependency |
Gets or sets a user-defined key dependency that is linked to all data cache objects that are created by the data source control. All cache objects are explicitly expired when the key is expired. |
CancelSelectOnNullParameter CancelSelectOnNullParameter CancelSelectOnNullParameter CancelSelectOnNullParameter |
Gets or sets a value indicating whether a data retrieval operation is canceled when any parameter that is contained in the SelectParameters collection evaluates to |
ChildControlsCreated ChildControlsCreated ChildControlsCreated ChildControlsCreated |
Gets a value that indicates whether the server control's child controls have been created. (Inherited from Control) |
ClientID ClientID ClientID ClientID |
Gets the server control identifier generated by ASP.NET. (Inherited from DataSourceControl) |
ClientIDMode ClientIDMode ClientIDMode ClientIDMode |
This property is not used for data source controls. (Inherited from DataSourceControl) |
ClientIDSeparator ClientIDSeparator ClientIDSeparator ClientIDSeparator |
Gets a character value representing the separator character used in the ClientID property. (Inherited from Control) |
ConflictDetection ConflictDetection ConflictDetection ConflictDetection |
Gets or sets the value indicating how the SqlDataSource control performs updates and deletes when data in a row in the underlying database changes during the time of the operation. |
ConnectionString ConnectionString ConnectionString ConnectionString |
Gets or sets the ADO.NET provider-specific connection string that the SqlDataSource control uses to connect to an underlying database. |
Context Context Context Context |
Gets the HttpContext object associated with the server control for the current Web request. (Inherited from Control) |
Controls Controls Controls Controls |
Gets a ControlCollection object that represents the child controls for a specified server control in the UI hierarchy. (Inherited from DataSourceControl) |
DataItemContainer DataItemContainer DataItemContainer DataItemContainer |
Gets a reference to the naming container if the naming container implements IDataItemContainer. (Inherited from Control) |
DataKeysContainer DataKeysContainer DataKeysContainer DataKeysContainer |
Gets a reference to the naming container if the naming container implements IDataKeysControl. (Inherited from Control) |
DataSourceMode DataSourceMode DataSourceMode DataSourceMode |
Gets or sets the data retrieval mode that the SqlDataSource control uses to fetch data. |
DeleteCommand DeleteCommand DeleteCommand DeleteCommand |
Gets or sets the SQL string that the SqlDataSource control uses to delete data from the underlying database. |
DeleteCommandType DeleteCommandType DeleteCommandType DeleteCommandType |
Gets or sets a value indicating whether the text in the DeleteCommand property is an SQL statement or the name of a stored procedure. |
DeleteParameters DeleteParameters DeleteParameters DeleteParameters |
Gets the parameters collection that contains the parameters that are used by the DeleteCommand property from the SqlDataSourceView object that is associated with the SqlDataSource control. |
DesignMode DesignMode DesignMode DesignMode |
Gets a value indicating whether a control is being used on a design surface. (Inherited from Control) |
EnableCaching EnableCaching EnableCaching EnableCaching |
Gets or sets a value indicating whether the SqlDataSource control has data caching enabled. |
EnableTheming EnableTheming EnableTheming EnableTheming |
Gets a value indicating whether this control supports themes. (Inherited from DataSourceControl) |
EnableViewState EnableViewState EnableViewState 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) |
Events Events Events Events |
Gets a list of event handler delegates for the control. This property is read-only. (Inherited from Control) |
FilterExpression FilterExpression FilterExpression FilterExpression |
Gets or sets a filtering expression that is applied when the Select(DataSourceSelectArguments) method is called. |
FilterParameters FilterParameters FilterParameters FilterParameters |
Gets a collection of parameters that are associated with any parameter placeholders that are in the FilterExpression string. |
HasChildViewState HasChildViewState HasChildViewState HasChildViewState |
Gets a value indicating whether the current server control's child controls have any saved view-state settings. (Inherited from Control) |
IControlBuilderAccessor.ControlBuilder IControlBuilderAccessor.ControlBuilder IControlBuilderAccessor.ControlBuilder IControlBuilderAccessor.ControlBuilder |
For a description of this member, see ControlBuilder. (Inherited from Control) |
IControlDesignerAccessor.UserData IControlDesignerAccessor.UserData IControlDesignerAccessor.UserData IControlDesignerAccessor.UserData |
For a description of this member, see UserData. (Inherited from Control) |
ID ID ID ID |
Gets or sets the programmatic identifier assigned to the server control. (Inherited from Control) |
IDataBindingsAccessor.DataBindings IDataBindingsAccessor.DataBindings IDataBindingsAccessor.DataBindings IDataBindingsAccessor.DataBindings |
For a description of this member, see DataBindings. (Inherited from Control) |
IDataBindingsAccessor.HasDataBindings IDataBindingsAccessor.HasDataBindings IDataBindingsAccessor.HasDataBindings IDataBindingsAccessor.HasDataBindings |
For a description of this member, see HasDataBindings. (Inherited from Control) |
IdSeparator IdSeparator IdSeparator IdSeparator |
Gets the character used to separate control identifiers. (Inherited from Control) |
IExpressionsAccessor.Expressions IExpressionsAccessor.Expressions IExpressionsAccessor.Expressions IExpressionsAccessor.Expressions |
For a description of this member, see Expressions. (Inherited from Control) |
IExpressionsAccessor.HasExpressions IExpressionsAccessor.HasExpressions IExpressionsAccessor.HasExpressions IExpressionsAccessor.HasExpressions |
For a description of this member, see HasExpressions. (Inherited from Control) |
IListSource.ContainsListCollection IListSource.ContainsListCollection IListSource.ContainsListCollection IListSource.ContainsListCollection |
Indicates whether the data source control is associated with one or more lists of data. (Inherited from DataSourceControl) |
InsertCommand InsertCommand InsertCommand InsertCommand |
Gets or sets the SQL string that the SqlDataSource control uses to insert data into the underlying database. |
InsertCommandType InsertCommandType InsertCommandType InsertCommandType |
Gets or sets a value indicating whether the text in the InsertCommand property is an SQL statement or the name of a stored procedure. |
InsertParameters InsertParameters InsertParameters InsertParameters |
Gets the parameters collection that contains the parameters that are used by the InsertCommand property from the SqlDataSourceView object that is associated with the SqlDataSource control. |
IsChildControlStateCleared IsChildControlStateCleared IsChildControlStateCleared IsChildControlStateCleared |
Gets a value indicating whether controls contained within this control have control state. (Inherited from Control) |
IsTrackingViewState IsTrackingViewState IsTrackingViewState IsTrackingViewState |
Gets a value that indicates whether the server control is saving changes to its view state. (Inherited from Control) |
IsViewStateEnabled IsViewStateEnabled IsViewStateEnabled IsViewStateEnabled |
Gets a value indicating whether view state is enabled for this control. (Inherited from Control) |
LoadViewStateByID LoadViewStateByID LoadViewStateByID LoadViewStateByID |
Gets a value indicating whether the control participates in loading its view state by ID instead of index. (Inherited from Control) |
NamingContainer NamingContainer NamingContainer 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) |
OldValuesParameterFormatString OldValuesParameterFormatString OldValuesParameterFormatString OldValuesParameterFormatString |
Gets or sets a format string to apply to the names of any parameters that are passed to the Delete() or Update() method. |
Page Page Page Page |
Gets a reference to the Page instance that contains the server control. (Inherited from Control) |
Parent Parent Parent Parent |
Gets a reference to the server control's parent control in the page control hierarchy. (Inherited from Control) |
ProviderName ProviderName ProviderName ProviderName |
Gets or sets the name of the .NET Framework data provider that the SqlDataSource control uses to connect to an underlying data source. |
RenderingCompatibility RenderingCompatibility RenderingCompatibility RenderingCompatibility |
Gets a value that specifies the ASP.NET version that rendered HTML will be compatible with. (Inherited from Control) |
SelectCommand SelectCommand SelectCommand SelectCommand |
Gets or sets the SQL string that the SqlDataSource control uses to retrieve data from the underlying database. |
SelectCommandType SelectCommandType SelectCommandType SelectCommandType |
Gets or sets a value indicating whether the text in the SelectCommand property is an SQL query or the name of a stored procedure. |
SelectParameters SelectParameters SelectParameters SelectParameters |
Gets the parameters collection that contains the parameters that are used by the SelectCommand property from the SqlDataSourceView object that is associated with the SqlDataSource control. |
Site Site Site Site |
Gets information about the container that hosts the current control when rendered on a design surface. (Inherited from Control) |
SkinID SkinID SkinID SkinID |
Gets the skin to apply to the DataSourceControl control. (Inherited from DataSourceControl) |
SortParameterName SortParameterName SortParameterName SortParameterName |
Gets or sets the name of a stored procedure parameter that is used to sort retrieved data when data retrieval is performed using a stored procedure. |
SqlCacheDependency SqlCacheDependency SqlCacheDependency SqlCacheDependency |
Gets or sets a semicolon-delimited string that indicates which databases and tables to use for the Microsoft SQL Server cache dependency. |
TemplateControl TemplateControl TemplateControl TemplateControl |
Gets or sets a reference to the template that contains this control. (Inherited from Control) |
TemplateSourceDirectory TemplateSourceDirectory TemplateSourceDirectory TemplateSourceDirectory |
Gets the virtual directory of the Page or UserControl that contains the current server control. (Inherited from Control) |
UniqueID UniqueID UniqueID UniqueID |
Gets the unique, hierarchically qualified identifier for the server control. (Inherited from Control) |
UpdateCommand UpdateCommand UpdateCommand UpdateCommand |
Gets or sets the SQL string that the SqlDataSource control uses to update data in the underlying database. |
UpdateCommandType UpdateCommandType UpdateCommandType UpdateCommandType |
Gets or sets a value indicating whether the text in the UpdateCommand property is an SQL statement or the name of a stored procedure. |
UpdateParameters UpdateParameters UpdateParameters UpdateParameters |
Gets the parameters collection that contains the parameters that are used by the UpdateCommand property from the SqlDataSourceView control that is associated with the SqlDataSource control. |
ValidateRequestMode ValidateRequestMode ValidateRequestMode 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 ViewState ViewState 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 ViewStateIgnoresCase ViewStateIgnoresCase ViewStateIgnoresCase |
Gets a value that indicates whether the StateBag object is case-insensitive. (Inherited from Control) |
ViewStateMode ViewStateMode ViewStateMode ViewStateMode |
Gets or sets the view-state mode of this control. (Inherited from Control) |
Visible Visible Visible Visible |
Gets or sets a value indicating whether the control is visually displayed. (Inherited from DataSourceControl) |
Methods
Events
DataBinding DataBinding DataBinding DataBinding |
Occurs when the server control binds to a data source. (Inherited from Control) |
Deleted Deleted Deleted Deleted |
Occurs when a delete operation has completed. |
Deleting Deleting Deleting Deleting |
Occurs before a delete operation. |
Disposed Disposed Disposed 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) |
Filtering Filtering Filtering Filtering |
Occurs before a filter operation. |
IDataSource.DataSourceChanged IDataSource.DataSourceChanged IDataSource.DataSourceChanged IDataSource.DataSourceChanged |
Occurs when a data source control has changed in a way that affects data-bound controls. (Inherited from DataSourceControl) |
Init Init Init Init |
Occurs when the server control is initialized, which is the first step in its lifecycle. (Inherited from Control) |
Inserted Inserted Inserted Inserted |
Occurs when an insert operation has completed. |
Inserting Inserting Inserting Inserting |
Occurs before an insert operation. |
Load Load Load Load |
Occurs when the server control is loaded into the Page object. (Inherited from Control) |
PreRender PreRender PreRender PreRender |
Occurs after the Control object is loaded but prior to rendering. (Inherited from Control) |
Selected Selected Selected Selected |
Occurs when a data retrieval operation has completed. |
Selecting Selecting Selecting Selecting |
Occurs before a data retrieval operation. |
Unload Unload Unload Unload |
Occurs when the server control is unloaded from memory. (Inherited from Control) |
Updated Updated Updated Updated |
Occurs when an update operation has completed. |
Updating Updating Updating Updating |
Occurs before an update operation. |