SqlDataSourceView Class

Definition

Supports the SqlDataSource control and provides an interface for data-bound controls to perform SQL data operations against relational databases.

public ref class SqlDataSourceView : System::Web::UI::DataSourceView, System::Web::UI::IStateManager
public class SqlDataSourceView : System.Web.UI.DataSourceView, System.Web.UI.IStateManager
type SqlDataSourceView = class
    inherit DataSourceView
    interface IStateManager
Public Class SqlDataSourceView
Inherits DataSourceView
Implements IStateManager
Inheritance
SqlDataSourceView
Derived
Implements

Remarks

The SqlDataSourceView class is intended primarily to be used by data-bound controls, and not as a programmable object in page code.

ASP.NET data source controls contain one or more lists of data, represented by data source view objects. The SqlDataSourceView class extends the DataSourceView class, defines the capabilities of the SqlDataSource control with which it is associated, and implements the basic data functionality for the data source control. The SqlDataSourceView class implements the data functionality for the SqlDataSource control, including the Select, Update, Insert, and Delete operations, sorting, filtering, and managing settings that are kept in view state.

Although the SqlDataSourceView object is not directly exposed to page developers by the SqlDataSource control, many of its properties are. The most basic operation that a data source view performs is data retrieval from the underlying database using the Select method, which retrieves an IEnumerable collection of data items. The SqlDataSourceView class implements data retrieval from relational databases using SQL queries. The SQL queries can be parameterized for greater flexibility and security. The following data retrieval methods, properties, and events are implemented by the SqlDataSourceView and exposed directly by its SqlDataSource control to page developers and other callers:

The SqlDataSourceView object supports updating data in a relational database using SQL commands. The SQL commands can be parameterized for greater flexibility and security. Data-bound controls, such as the GridView and DetailsView, can be configured to perform updates automatically using the SqlDataSourceView, while other controls cannot. The following update methods, properties, and events are implemented by the SqlDataSourceView and exposed directly by its SqlDataSource control to page developers and other callers:

The SqlDataSourceView supports inserting new rows of data into a relational database. The SQL commands that are specified in the InsertCommand property can be parameterized for greater flexibility and security. Data-bound controls, such as the GridView and DetailsView, can be configured to perform inserts automatically using the SqlDataSourceView, while other controls cannot. The following insert methods, properties, and events are implemented by the SqlDataSourceView and exposed directly by its SqlDataSource control to page developers and other callers:

The SqlDataSourceView object also supports deleting data from a relational database. As with other commands, the SQL commands that are specified in the DeleteCommand property can be parameterized for greater flexibility and security. Data-bound controls, such as the GridView and DetailsView, can be configured to perform deletes automatically using the SqlDataSourceView, while other controls cannot. The following delete methods, properties, and events are implemented by the SqlDataSourceView and exposed directly by its SqlDataSource control to page developers and other callers:

Data retrieval is more powerful when the clause that is used to filter the data during data retrieval is dynamic. In other words, an SQL query with a static WHERE clause is not as flexible and powerful as an SQL query where the values in the WHERE clause are bound to values that can change, such as values that are displayed in controls on a Web Forms page. Instead of rebuilding an SQL query and setting the SelectCommand property on every page load, you can use the FilterExpression and FilterParameters properties to apply dynamic filtering to data retrieval. These properties are implemented by the SqlDataSourceView and exposed directly by its SqlDataSource control to data-bound controls and other callers.

You can sort the data that you retrieve with the SqlDataSource control by adding an ORDER BY clause, which causes the database to perform the ordering for you when you retrieve data or by ordering the data in memory after it is retrieved. You can supply a sorting expression to the SqlDataSourceView by setting the SortExpression property of the DataSourceSelectArguments object that is passed to the Select method. The syntax for the SortExpression property is the same as the syntax for a DataView.Sort property. If you use a stored procedure to retrieve data, you can also use the SortParameterName property to specify a parameter that is used specifically for sorting the results of a stored procedure call.

When more than one user can change the database concurrently, there is the potential for concurrency conflict. The SqlDataSource control has controls concurrency through the SqlDataSource.ConflictDetection property. The functionality is implemented in the SqlDataSourceView.ConflictDetection property.

Like many other Web server controls, the SqlDataSourceView implements the IStateManager interface and uses view state to track its state across page requests. Implementations of the IsTrackingViewState and property and the LoadViewState, SaveViewState, and TrackViewState methods are provided to enable view state tracking for the control. For more information, see ASP.NET State Management Overview.

Constructors

SqlDataSourceView(SqlDataSource, String, HttpContext)

Initializes a new instance of the SqlDataSourceView class setting the specified SqlDataSource control as the owner of the current view.

Properties

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 null.

CanDelete

Gets a value indicating whether the SqlDataSourceView object that is associated with the current SqlDataSource control supports the delete operation.

CanInsert

Gets a value indicating whether the SqlDataSourceView object that is associated with the current SqlDataSource control supports the insert operation.

CanPage

Gets a value indicating whether the SqlDataSourceView object that is associated with the current SqlDataSource control supports the paging of retrieved data.

CanRetrieveTotalRowCount

Gets a value indicating whether the SqlDataSourceView object that is associated with the current SqlDataSource control supports retrieving the total number of data rows, in addition to the set of data.

CanSort

Gets a value indicating whether the SqlDataSourceView object that is associated with the current SqlDataSource control supports a sorted view on the retrieved data.

CanUpdate

Gets a value indicating whether the SqlDataSourceView object that is associated with the current SqlDataSource control supports the update operation.

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.

DeleteCommand

Gets or sets the SQL string that the SqlDataSourceView uses to delete data from the underlying database.

DeleteCommandType

Gets or sets a value indicating whether the text in the DeleteCommand property is a SQL statement or the name of a stored procedure.

DeleteParameters

Gets the parameters collection containing the parameters that are used by the DeleteCommand property.

Events

Gets a list of event-handler delegates for the data source view.

(Inherited from DataSourceView)
FilterExpression

Gets or sets a filtering expression that is applied when the Select method is called.

FilterParameters

Gets a collection of parameters that are associated with any parameter placeholders in the FilterExpression string.

InsertCommand

Gets or sets the SQL string that the SqlDataSourceView object uses to insert data into the underlying database.

InsertCommandType

Gets or sets a value indicating whether the text in the InsertCommand property is a SQL statement or the name of a stored procedure.

InsertParameters

Gets the parameters collection containing the parameters that are used by the InsertCommand property.

IsTrackingViewState

Gets a value indicating whether the SqlDataSourceView object is saving changes to its view state.

Name

Gets the name of the data source view.

(Inherited from DataSourceView)
OldValuesParameterFormatString

Gets or sets a format string to apply to the names of any parameters that are passed to the Delete or Update method.

ParameterPrefix

Gets the string that is used to prefix a parameter placeholder in a parameterized SQL query.

SelectCommand

Gets or sets the SQL string that the SqlDataSourceView object uses to retrieve data from the underlying database.

SelectCommandType

Gets or sets a value indicating whether the text in the SelectCommand property is a SQL query or the name of a stored procedure.

SelectParameters

Gets the parameters collection containing the parameters that are used by the SelectCommand property.

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.

UpdateCommand

Gets or sets the SQL string that the SqlDataSourceView object uses to update data in the underlying database.

UpdateCommandType

Gets or sets a value indicating whether the text in the UpdateCommand property is a SQL statement or the name of a stored procedure.

UpdateParameters

Gets the parameters collection containing the parameters that are used by the UpdateCommand property.

Methods

CanExecute(String)

Determines whether the specified command can be executed.

(Inherited from DataSourceView)
Delete(IDictionary, IDictionary)

Performs a delete operation using the DeleteCommand SQL string, any parameters that are specified in the DeleteParameters collection, and the values that are in the specified keys and oldValues collections.

Delete(IDictionary, IDictionary, DataSourceViewOperationCallback)

Performs an asynchronous delete operation on the list of data that the DataSourceView object represents.

(Inherited from DataSourceView)
Equals(Object)

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

(Inherited from Object)
ExecuteCommand(String, IDictionary, IDictionary)

Executes the specified command.

(Inherited from DataSourceView)
ExecuteCommand(String, IDictionary, IDictionary, DataSourceViewOperationCallback)

Executes the specified command.

(Inherited from DataSourceView)
ExecuteDelete(IDictionary, IDictionary)

Performs a delete operation using the DeleteCommand SQL string, any parameters that are specified in the DeleteParameters collection, and the values that are in the specified keys and oldValues collections.

ExecuteInsert(IDictionary)

Performs an insert operation using the InsertCommand SQL string, any parameters that are specified in the InsertParameters collection, and the values that are in the specified values collection.

ExecuteSelect(DataSourceSelectArguments)

Retrieves data from the underlying database using the SelectCommand SQL string and any parameters that are in the SelectParameters collection.

ExecuteUpdate(IDictionary, IDictionary, IDictionary)

Performs an update operation using the UpdateCommand SQL string, any parameters that are in the UpdateParameters collection, and the values that are in the specified keys, values, and oldValues collections.

GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
Insert(IDictionary)

Performs an insert operation using the InsertCommand SQL string, any parameters that are specified in the InsertParameters collection, and the values that are in the specified values collection.

Insert(IDictionary, DataSourceViewOperationCallback)

Performs an asynchronous insert operation on the list of data that the DataSourceView object represents.

(Inherited from DataSourceView)
LoadViewState(Object)

Restores the previously saved view state for the data source view.

MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
OnDataSourceViewChanged(EventArgs)

Raises the DataSourceViewChanged event.

(Inherited from DataSourceView)
OnDeleted(SqlDataSourceStatusEventArgs)

Raises the Deleted event after the SqlDataSource control has completed a delete operation.

OnDeleting(SqlDataSourceCommandEventArgs)

Raises the Deleting event before the SqlDataSource control attempts a delete operation.

OnFiltering(SqlDataSourceFilteringEventArgs)

Raises the Filtering event before the SqlDataSource control filters the results of a select operation.

OnInserted(SqlDataSourceStatusEventArgs)

Raises the Inserted event after the SqlDataSource control has completed an insert operation.

OnInserting(SqlDataSourceCommandEventArgs)

Raises the Inserting event before the SqlDataSource control attempts an insert operation.

OnSelected(SqlDataSourceStatusEventArgs)

Raises the Selected event after the SqlDataSource control has completed a data retrieval operation.

OnSelecting(SqlDataSourceSelectingEventArgs)

Raises the Selecting event before the SqlDataSource control attempts a data retrieval operation.

OnUpdated(SqlDataSourceStatusEventArgs)

Raises the Updated event after the SqlDataSource control has completed an update operation.

OnUpdating(SqlDataSourceCommandEventArgs)

Raises the Updating event before the SqlDataSource control attempts an update operation.

RaiseUnsupportedCapabilityError(DataSourceCapabilities)

Compares the capabilities that are requested for an ExecuteSelect(DataSourceSelectArguments) operation against those that the view supports and is called by the RaiseUnsupportedCapabilitiesError(DataSourceView) method.

SaveViewState()

Saves the changes to the view state for the SqlDataSourceView control since the time that the page was posted back to the server.

Select(DataSourceSelectArguments)

Retrieves data from the underlying database using the SelectCommand SQL string and any parameters that are in the SelectParameters collection.

Select(DataSourceSelectArguments, DataSourceViewSelectCallback)

Gets a list of data asynchronously from the underlying data storage.

(Inherited from DataSourceView)
ToString()

Returns a string that represents the current object.

(Inherited from Object)
TrackViewState()

Causes the SqlDataSourceView object to track changes to its view state so that the changes can be stored in the StateBag object for the control and persisted across requests for the same page.

Update(IDictionary, IDictionary, IDictionary)

Performs an update operation using the UpdateCommand SQL string, any parameters that are in the UpdateParameters collection, and the values that are in the specified keys, values, and oldValues collections.

Update(IDictionary, IDictionary, IDictionary, DataSourceViewOperationCallback)

Performs an asynchronous update operation on the list of data that the DataSourceView object represents.

(Inherited from DataSourceView)

Events

DataSourceViewChanged

Occurs when the data source view has changed.

(Inherited from DataSourceView)
Deleted

Occurs when a delete operation has completed.

Deleting

Occurs before a delete operation.

Filtering

Occurs before a filter operation.

Inserted

Occurs when an insert operation has completed.

Inserting

Occurs before an insert operation.

Selected

Occurs when a data retrieval operation has completed.

Selecting

Occurs before a data retrieval operation.

Updated

Occurs when an update operation has completed.

Updating

Occurs before an update operation.

Explicit Interface Implementations

IStateManager.IsTrackingViewState

For a description of this member, see IsTrackingViewState.

IStateManager.LoadViewState(Object)

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

IStateManager.SaveViewState()

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

IStateManager.TrackViewState()

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

Applies to

See also