Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

ObjectDataSourceEventArgs classe

 

Date de publication : novembre 2016

Fournit des données pour le ObjectCreating et ObjectCreated les événements de la ObjectDataSource contrôle.

Espace de noms:   System.Web.UI.WebControls
Assembly:  System.Web (dans System.Web.dll)

System.Object
  System.EventArgs
    System.Web.UI.WebControls.ObjectDataSourceEventArgs

public class ObjectDataSourceEventArgs : EventArgs

NomDescription
System_CAPS_pubmethodObjectDataSourceEventArgs(Object)

Initialise une nouvelle instance de la ObjectDataSourceEventArgs classe à l’aide de l’objet spécifié.

NomDescription
System_CAPS_pubpropertyObjectInstance

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.

NomDescription
System_CAPS_pubmethodEquals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.(Hérité de Object.)

System_CAPS_protmethodFinalize()

Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)

System_CAPS_pubmethodGetHashCode()

Fait office de fonction de hachage par défaut.(Hérité de Object.)

System_CAPS_pubmethodGetType()

Obtient le Type de l'instance actuelle.(Hérité de Object.)

System_CAPS_protmethodMemberwiseClone()

Crée une copie superficielle du Object actuel.(Hérité de Object.)

System_CAPS_pubmethodToString()

Retourne une chaîne qui représente l'objet actuel.(Hérité de Object.)

La ObjectDataSourceEventArgs classe est utilisée dans les OnObjectCreating et OnObjectCreated méthodes pour fournir l’accès à l’instance d’objet métier avant que toute opération de données qui utilisent la ObjectDataSource contrôle et l’objet métier sont effectuées. L’objet métier est défini et accessibles via la ObjectInstance propriété. En ajoutant un délégué de gestionnaire d’événements pour gérer les ObjectCreating événement, vous pouvez créer une instance de l’objet métier dans un code personnalisé au lieu du ObjectDataSource exécute l’instanciation. Cela est utile lorsque vous souhaitez une instance par défaut de votre objet métier ou d’appeler un constructeur non défini par défaut pour créer l’instance ; le ObjectDataSource appelle toujours le constructeur par défaut pour créer une instance de l’objet métier associé. Vous pouvez également ajouter un délégué de gestionnaire d’événements pour gérer les ObjectCreated événement, ce qui vous permet d’accéder aux publiquement exposé des membres de l’objet métier pour effectuer toute initialisation ou travail supplémentaire.

Le OnObjectCreating et OnObjectCreated méthodes ne sont pas appelées par le ObjectDataSource du contrôle, si la méthode d’objet métier qui effectue les opérations de données static.

Le ObjectDataSource contrôle expose plusieurs événements que vous pouvez gérer pour travailler avec l’objet métier sous-jacent à divers stades de son cycle de vie. Le tableau suivant répertorie les événements et associé EventArgs classes et délégués de gestionnaires d’événements.

event

EventArgs

EventHandler

ObjectCreating.

Se produit immédiatement avant la création de l’instance de l’objet métier.

ObjectDataSourceEventArgs

ObjectDataSourceObjectEventHandler

ObjectCreated.

Se produit immédiatement après la création de l’instance de l’objet métier.

ObjectDataSourceEventArgs

ObjectDataSourceObjectEventHandler

Selecting.

Se produit avant que les données sont récupérées.

ObjectDataSourceSelectingEventArgs

ObjectDataSourceSelectingEventHandler

Inserting, Updating et Deleting.

Se produit avant une opération d’insertion, mise à jour ou suppression est effectuée.

ObjectDataSourceMethodEventArgs

ObjectDataSourceMethodEventHandler

Selected.

Se produit après que les données sont récupérées.

ObjectDataSourceStatusEventArgs

ObjectDataSourceStatusEventHandler

Inserted, Updated, Deleted.

Se produit après l’insertion, mise à jour ou suppression est terminée.

ObjectDataSourceStatusEventArgs

ObjectDataSourceStatusEventHandler

ObjectDisposing.

Se produit avant la destruction d’un objet métier.

ObjectDataSourceDisposingEventArgs

ObjectDataSourceDisposingEventHandler

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.

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 beaucoup de scénarios réels, il peut ê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 ne peut pas appeler le constructeur par défaut, car elle lève une exception. Dans certains cas, le constructeur par défaut peut être protégé et dans d’autres qu’il ne peut pas initialiser l’objet métier à l’état désiré. Quelle que soit la raison, vous pouvez créer une instance de l’objet métier vous-même et affecter à l’instance du ObjectInstance propriété de la ObjectDataSourceEventArgs objet qui est passé au gestionnaire. C’est l’objet métier d’instance que le ObjectDataSource utilisera 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>

L’exemple de code suivant montre l’exemple d’objet métier de base qui utilise l’exemple de code précédent.

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;
    }

  }

}

.NET Framework
Disponible depuis 2.0

Tous les membres statiques publics ( Shared en Visual Basic) de ce type sont thread-safe. Les membres d’instance n’ont pas la garantie d’être thread-safe.

Retour au début
Afficher: