ObjectDataSourceView Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Supports the ObjectDataSource control and provides an interface for data-bound controls to perform data operations with business and data objects.
public ref class ObjectDataSourceView : System::Web::UI::DataSourceView, System::Web::UI::IStateManager
public class ObjectDataSourceView : System.Web.UI.DataSourceView, System.Web.UI.IStateManager
type ObjectDataSourceView = class
inherit DataSourceView
interface IStateManager
Public Class ObjectDataSourceView
Inherits DataSourceView
Implements IStateManager
- Inheritance
- Implements
Remarks
The ObjectDataSourceView class is intended primarily to be used by data-bound controls, and not as a programmable object in page code.
The ObjectDataSourceView class implements the data functionality for the ObjectDataSource control, including the Select, Update, Delete, and Insert operations, sorting, filtering, and management of settings kept in view state.
A ObjectDataSourceView object is created for each instance of the ObjectDataSource class at run time. Calls to data operations of the instance of the ObjectDataSource class are handled by the instance of the ObjectDataSourceView object. Page developers do not access the instance of the ObjectDataSourceView class directly. Control developers can create custom data controls by extending the ObjectDataSource and ObjectDataSourceView classes.
The ObjectDataSourceView class performs data operations by calling methods on business or data objects using reflection. At run time, the ObjectDataSource control creates an instance of the type that is identified by the TypeName property, and then calls the appropriate method for the data operation. The instantiated object is not cached in memory by the ObjectDataSourceView. The object is created and destroyed for every data method call. If the method is static
(Shared
in Visual Basic), an instance is not created but the data operation method is still called.
The ObjectDataSourceView is not directly exposed to page developers by the ObjectDataSource control. Instead, the properties and methods of the ObjectDataSourceView are accessed through the ObjectDataSource. For example, the DeleteMethod of ObjectDataSourceView property is set by setting the DeleteMethod property of the ObjectDataSource.
Retrieving Data
The most basic operation that a data source view performs is data retrieval from the underlying data storage using the Select method, which retrieves an IEnumerable collection of data items. The following data retrieval methods, properties, and events are implemented by the ObjectDataSourceView object and exposed directly by its ObjectDataSource control to page developers and other callers:
The Select method
The SelectMethod property
The SelectParameters property
The Selecting event
The Selected event
Updating Data
The ObjectDataSourceView object supports data updates by calling a business or data object method that is identified by the UpdateMethod property. Data-bound controls that automatically perform updates, such as the GridView and DetailsView controls, pass their parameters in an IOrderedDictionary interface to the ObjectDataSourceView and the view object merges these parameters with any parameters that are found in the UpdateParameters collection.
The following update methods, properties, and events are implemented by the ObjectDataSourceView and exposed directly by its ObjectDataSource control to page developers and other callers:
The Update method
The UpdateMethod property
The UpdateParameters property
The Updating event
The Updated event
Inserting Data
The ObjectDataSourceView object supports inserting new rows of data by calling a business or data object method that is identified by the InsertMethod property. Data-bound controls that automatically perform inserts, such as the GridView and DetailsView, pass their parameters in an IOrderedDictionary interface to the ObjectDataSourceView and the view object merges these parameters with any parameters that are found in the InsertParameters collection.
The following insert methods, properties, and events are implemented by the ObjectDataSourceView and exposed directly by its ObjectDataSource control to page developers and other callers:
The Insert method
The InsertMethod property
The InsertParameters property
The Inserting event
The Inserted event
Deleting Data
The ObjectDataSourceView object supports deleting data by calling a business or data object method that is identified by the DeleteMethod property. Data-bound controls that automatically perform deletes, such as the GridView and DetailsView, pass their parameters in an IOrderedDictionary interface to the ObjectDataSourceView and the view object merges these parameters with any parameters that are found in the DeleteParameters collection. The following delete methods, properties, and events are implemented by the ObjectDataSourceView and exposed directly by its ObjectDataSource control to page developers and other callers:
The Delete method
The DeleteMethod property
The DeleteParameters property
The Deleting event
The Deleted event
Filtering and Sorting Data
Data retrieval is more powerful when you can filter the data dynamically. Filtering is supported only by the ObjectDataSource control if the Select method returns a DataTable or DataSet object. You can use the FilterExpression and FilterParameters properties to apply dynamic filtering to data retrieval. These properties are implemented by the ObjectDataSourceView object and exposed directly by its ObjectDataSource control to data-bound controls and other callers.
You can sort the data that you retrieve with the ObjectDataSource by ordering the data in memory after it is retrieved. Sorting is supported only by the ObjectDataSource control if the Select method returns a DataTable or DataSet. The CanSort property always returns true
, because the ObjectDataSourceView cannot determine what type is returned by the Select method without calling the method. The SortExpression property syntax is the same as for a DataView.Sort property.
Tracking View State
The ObjectDataSourceView implements the IStateManager interface and uses view state to track its state across page requests. Implementation of 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
ObjectDataSourceView(ObjectDataSource, String, HttpContext) |
Initializes a new instance of the ObjectDataSourceView class. |
Properties
CanDelete |
Gets a value indicating whether the ObjectDataSourceView object that is associated with the current ObjectDataSource control supports the delete operation. |
CanInsert |
Gets a value indicating whether the ObjectDataSourceView object that is associated with the current ObjectDataSource control supports the insert operation. |
CanPage |
Gets a value indicating whether the ObjectDataSourceView object that is associated with the current ObjectDataSource control supports paging through the retrieved data. |
CanRetrieveTotalRowCount |
Gets a value indicating whether the ObjectDataSourceView object that is associated with the current ObjectDataSource control supports retrieving the total number of data rows, in addition to the set of data. |
CanSort |
Gets a value indicating whether the ObjectDataSourceView object that is associated with the current ObjectDataSource control supports a sorted view on the underlying data source. |
CanUpdate |
Gets a value indicating whether the ObjectDataSourceView object that is associated with the current ObjectDataSource control supports the update operation. |
ConflictDetection |
Gets or sets a value that determines how the ObjectDataSource control performs updates and deletes when data in a row in the underlying data storage changes during the time of the operation. |
ConvertNullToDBNull |
Gets or sets a value indicating whether Parameter values that are passed to an update, insert, or delete operation are automatically converted from |
DataObjectTypeName |
Gets or sets the name of a class that the ObjectDataSource control uses for a parameter in a data operation. The ObjectDataSource control uses the specified class instead of the Parameter objects that are in the various parameters collections. |
DeleteMethod |
Gets or sets the name of the method or function that the ObjectDataSourceView object invokes to delete data. |
DeleteParameters |
Gets the parameters collection that contains the parameters that are used by the DeleteMethod method. |
EnablePaging |
Gets or sets a value indicating whether the data source control supports paging through the set of data that it retrieves. |
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 business object method that is identified by the SelectMethod property is called. |
FilterParameters |
Gets a collection of parameters that are associated with any parameter placeholders that are in the FilterExpression string. |
InsertMethod |
Gets or sets the name of the method or function that the ObjectDataSourceView object invokes to insert data. |
InsertParameters |
Gets the parameters collection that contains the parameters that are used by the InsertMethod method. |
IsTrackingViewState |
Gets a value indicating whether the ObjectDataSourceView object is saving changes to its view state. |
MaximumRowsParameterName |
Gets or sets the name of the data retrieval method parameter that is used to indicate the number of records to retrieve for data source paging support. |
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 the parameters for original values that are passed to the |
ParsingCulture |
Gets a or sets a value that indicates what culture information is used when converting string values to actual property types in order to construct an object of the type indicated by DataObjectTypeName. |
SelectCountMethod |
Gets or sets the name of the method or function that the ObjectDataSourceView control invokes to retrieve a row count. |
SelectMethod |
Gets or sets the name of the method or function that the ObjectDataSourceView control invokes to retrieve data. |
SelectParameters |
Gets the parameters collection containing the parameters that are used by the SelectMethod method. |
SortParameterName |
Gets or sets the name of the data retrieval method parameter that is used to specify a sort expression for data source sorting support. |
StartRowIndexParameterName |
Gets or sets the name of the data retrieval method parameter that is used to indicate the integer index of the first record to retrieve from the results set for data source paging support. |
TypeName |
Gets or sets the name of the class that the ObjectDataSource control represents. |
UpdateMethod |
Gets or sets the name of the method or function that the ObjectDataSourceView object invokes to update data. |
UpdateParameters |
Gets the parameters collection containing the parameters that are used by the UpdateMethod method. |
Methods
CanExecute(String) |
Determines whether the specified command can be executed. (Inherited from DataSourceView) |
Delete(IDictionary, IDictionary, DataSourceViewOperationCallback) |
Performs an asynchronous delete operation on the list of data that the DataSourceView object represents. (Inherited from DataSourceView) |
Delete(IDictionary, IDictionary) |
Performs a delete operation by calling the business object method that is identified by the DeleteMethod property using the specified |
Equals(Object) |
Determines whether the specified object is equal to the current object. (Inherited from Object) |
ExecuteCommand(String, IDictionary, IDictionary, DataSourceViewOperationCallback) |
Executes the specified command. (Inherited from DataSourceView) |
ExecuteCommand(String, IDictionary, IDictionary) |
Executes the specified command. (Inherited from DataSourceView) |
ExecuteDelete(IDictionary, IDictionary) |
Performs a delete operation using the DeleteMethod method and the specified |
ExecuteInsert(IDictionary) |
Performs an insert operation by calling the business object method that is identified by the InsertMethod property using the specified |
ExecuteSelect(DataSourceSelectArguments) |
Retrieves data from the object that is identified by the TypeName property by calling the method that is identified by the SelectMethod property and passing any values in the SelectParameters collection. |
ExecuteUpdate(IDictionary, IDictionary, IDictionary) |
Performs an update operation by calling the method that is identified by the UpdateMethod property and using any parameters that are supplied in the |
GetHashCode() |
Serves as the default hash function. (Inherited from Object) |
GetType() |
Gets the Type of the current instance. (Inherited from Object) |
Insert(IDictionary, DataSourceViewOperationCallback) |
Performs an asynchronous insert operation on the list of data that the DataSourceView object represents. (Inherited from DataSourceView) |
Insert(IDictionary) |
Performs an insert operation by calling the business object method that is identified by the InsertMethod property using the specified |
LoadViewState(Object) |
Restores 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(ObjectDataSourceStatusEventArgs) |
Raises the Deleted event after the ObjectDataSourceView object has completed a delete operation. |
OnDeleting(ObjectDataSourceMethodEventArgs) |
Raises the Deleting event before the ObjectDataSourceView object attempts a delete operation. |
OnFiltering(ObjectDataSourceFilteringEventArgs) |
Raises the Filtering event before the ObjectDataSourceView object attempts a filtering operation. |
OnInserted(ObjectDataSourceStatusEventArgs) |
Raises the Inserted event after the ObjectDataSourceView object has completed an insert operation. |
OnInserting(ObjectDataSourceMethodEventArgs) |
Raises the Inserting event before the ObjectDataSourceView object attempts an insert operation. |
OnObjectCreated(ObjectDataSourceEventArgs) |
Raises the ObjectCreated event after the ObjectDataSourceView creates an instance of the object that is identified by the TypeName property. |
OnObjectCreating(ObjectDataSourceEventArgs) |
Raises the ObjectCreating event before the ObjectDataSourceView object creates an instance of a business object to perform a data operation. |
OnObjectDisposing(ObjectDataSourceDisposingEventArgs) |
Raises the ObjectDisposing event before the ObjectDataSourceView object discards an instantiated type. |
OnSelected(ObjectDataSourceStatusEventArgs) |
Raises the Selected event after the ObjectDataSourceView object has completed a data retrieval operation. |
OnSelecting(ObjectDataSourceSelectingEventArgs) |
Raises the Selecting event before the ObjectDataSourceView object attempts a data retrieval operation. |
OnUpdated(ObjectDataSourceStatusEventArgs) |
Raises the Updated event after the ObjectDataSourceView object has completed an update operation. |
OnUpdating(ObjectDataSourceMethodEventArgs) |
Raises the Updating event before the ObjectDataSourceView object attempts an update operation. |
RaiseUnsupportedCapabilityError(DataSourceCapabilities) |
Called by the RaiseUnsupportedCapabilitiesError(DataSourceView) method to compare the capabilities requested for an ExecuteSelect(DataSourceSelectArguments) operation against those that the view supports. (Inherited from DataSourceView) |
SaveViewState() |
Saves the changes to the view state for the ObjectDataSourceView object since the time when the page was posted back to the server. |
Select(DataSourceSelectArguments, DataSourceViewSelectCallback) |
Gets a list of data asynchronously from the underlying data storage. (Inherited from DataSourceView) |
Select(DataSourceSelectArguments) |
Retrieves data from the object that is identified by the TypeName property by calling the method that is identified by the SelectMethod property and passing any values in the SelectParameters collection. |
ToString() |
Returns a string that represents the current object. (Inherited from Object) |
TrackViewState() |
Causes the ObjectDataSourceView object to track changes to its view state so that the changes can be stored in the ViewState object for the control and persisted across requests for the same page. |
Update(IDictionary, IDictionary, IDictionary, DataSourceViewOperationCallback) |
Performs an asynchronous update operation on the list of data that the DataSourceView object represents. (Inherited from DataSourceView) |
Update(IDictionary, IDictionary, IDictionary) |
Performs an update operation by calling the method that is identified by the UpdateMethod property and using any parameters that are supplied in the |
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. |
ObjectCreated |
Occurs after the ObjectDataSourceView object creates an instance of the type that is identified by the TypeName property. |
ObjectCreating |
Occurs before the ObjectDataSourceView object creates an instance of the type that is identified by the TypeName property. |
ObjectDisposing |
Occurs when the ObjectDataSourceView object discards an instance of an object that it has created. |
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(). |