ObjectDataSourceEventArgs Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Fournit des données pour les événements et ObjectCreated les ObjectCreating événements du ObjectDataSource contrôle.
public ref class ObjectDataSourceEventArgs : EventArgs
public class ObjectDataSourceEventArgs : EventArgs
type ObjectDataSourceEventArgs = class
inherit EventArgs
Public Class ObjectDataSourceEventArgs
Inherits EventArgs
- Héritage
Exemples
Cette section contient deux exemples de code. Le premier exemple de code montre comment utiliser un ObjectDataSource contrôle avec un objet métier et un GridView contrôle pour récupérer et afficher des informations. Le deuxième exemple de code fournit l’exemple d’objet métier de base que le premier exemple de code utilise.
L’exemple de code suivant montre comment utiliser un ObjectDataSource contrôle avec un objet métier et un GridView contrôle pour récupérer et afficher des informations. Dans cet exemple, comme dans de nombreux scénarios réels, il peut ne pas être possible ni approprié d’utiliser une instance par défaut de l’objet métier avec le ObjectDataSource contrôle. Dans cet exemple, le ObjectDataSource constructeur sans paramètre ne peut pas appeler correctement le constructeur sans paramètre, car il lève une exception. Dans certains cas, le constructeur sans paramètre peut être protégé et dans d’autres, il peut ne pas initialiser l’objet métier à un état souhaité. Quelle que soit la raison, vous pouvez créer une instance de l’objet métier vous-même et définir l’instance sur la ObjectInstance propriété de l’objet ObjectDataSourceEventArgs passé au gestionnaire. Il s’agit de l’instance ObjectDataSource d’objet métier utilisée pour effectuer son travail.
<%@ Import namespace="Samples.AspNet.CS" %>
<%@ 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 NorthwindLogicCreating(object sender, ObjectDataSourceEventArgs e)
{
// Create an instance of the business object using a non-default constructor.
EmployeeLogic eLogic = new EmployeeLogic("Not created by the default constructor!");
// Set the ObjectInstance property so that the ObjectDataSource uses the created instance.
e.ObjectInstance = eLogic;
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ObjectDataSource - C# Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<asp:gridview
id="GridView1"
runat="server"
datasourceid="ObjectDataSource1">
</asp:gridview>
<asp:objectdatasource
id="ObjectDataSource1"
runat="server"
selectmethod="GetAllEmployees"
onobjectcreating="NorthwindLogicCreating"
typename="Samples.AspNet.CS.EmployeeLogic" >
</asp:objectdatasource>
</form>
</body>
</html>
<%@ Import namespace="Samples.AspNet.VB" %>
<%@ 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">
Private Sub NorthwindLogicCreating(sender As Object, e As ObjectDataSourceEventArgs)
' Create an instance of the business object using a non-default constructor.
Dim eLogic As EmployeeLogic = New EmployeeLogic("Not created by the default constructor!")
' Set the ObjectInstance property so that the ObjectDataSource uses the created instance.
e.ObjectInstance = eLogic
End Sub ' NorthwindLogicCreating
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ObjectDataSource - VB Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<asp:gridview
id="GridView1"
runat="server"
datasourceid="ObjectDataSource1">
</asp:gridview>
<asp:objectdatasource
id="ObjectDataSource1"
runat="server"
selectmethod="GetAllEmployees"
onobjectcreating="NorthwindLogicCreating"
typename="Samples.AspNet.VB.EmployeeLogic" >
</asp:objectdatasource>
</form>
</body>
</html>
L’exemple de code suivant illustre l’exemple d’objet métier de base que l’exemple de code précédent utilise.
namespace Samples.AspNet.CS {
using System;
using System.Collections;
using System.Web.UI;
using System.Web.UI.WebControls;
public class EmployeeLogic {
public EmployeeLogic() {
throw new NotSupportedException("Initialize data.");
}
public EmployeeLogic(string data) {
_data = data;
}
private string _data;
// Returns a collection of NorthwindEmployee objects.
public ICollection GetAllEmployees () {
ArrayList al = new ArrayList();
al.Add(_data);
return al;
}
}
}
Imports System.Collections
Imports System.Web.UI
Imports System.Web.UI.WebControls
Namespace Samples.AspNet.VB
Public Class EmployeeLogic
Public Sub New()
Throw New NotSupportedException("Initialize data.")
End Sub
Public Sub New(ByVal data As String)
_data = data
End Sub
Private _data As String
' Returns a collection of NorthwindEmployee objects.
Public Function GetAllEmployees() As ICollection
Dim al As New ArrayList()
al.Add(_data)
Return al
End Function 'GetAllEmployees
End Class
End Namespace ' Samples.AspNet.VB
Remarques
La ObjectDataSourceEventArgs classe est utilisée dans les méthodes et OnObjectCreated les OnObjectCreating méthodes pour fournir l’accès à l’instance d’objet métier avant toute opération de données qui utilise le ObjectDataSource contrôle et l’objet métier sont effectuées. L’objet métier est défini et accessible à l’aide de la ObjectInstance propriété. En ajoutant un délégué de gestionnaire d’événements pour gérer l’événement ObjectCreating , vous pouvez créer une instance de l’objet métier dans du code personnalisé au lieu d’exécuter l’instanciation ObjectDataSource . Cela est utile lorsque vous souhaitez une instance non par défaut de votre objet métier ou appeler un constructeur sans paramètre pour créer l’instance ; appelle ObjectDataSource toujours le constructeur sans paramètre pour créer une instance de l’objet métier avec lequel il fonctionne. Vous pouvez également ajouter un délégué de gestionnaire d’événements pour gérer l’événement ObjectCreated , ce qui vous permet d’accéder à tous les membres exposés publiquement de l’objet métier pour effectuer une initialisation ou un travail supplémentaires.
Les OnObjectCreating méthodes et OnObjectCreated les méthodes ne sont pas appelées par le ObjectDataSource contrôle, si la méthode d’objet métier qui effectue les opérations de données est static.
Le ObjectDataSource contrôle expose de nombreux événements que vous pouvez gérer pour travailler avec l’objet métier sous-jacent à différents moments de son cycle de vie. Le tableau suivant répertorie les événements et les classes et délégués de gestionnaire d’événements associés EventArgs .
Constructeurs
| Nom | Description |
|---|---|
| ObjectDataSourceEventArgs(Object) |
Initialise une nouvelle instance de la classe à l’aide ObjectDataSourceEventArgs de l’objet spécifié. |
Propriétés
| Nom | Description |
|---|---|
| ObjectInstance |
Obtient ou définit un objet qui représente l’objet métier avec lequel le ObjectDataSource contrôle effectue des opérations de données. |
Méthodes
| Nom | Description |
|---|---|
| Equals(Object) |
Détermine si l’objet spécifié est égal à l’objet actuel. (Hérité de Object) |
| GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |