Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

ObjectDataSourceEventArgs, classe

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

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

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

public class ObjectDataSourceEventArgs : EventArgs

Le type ObjectDataSourceEventArgs expose les membres suivants.

  NomDescription
Méthode publiqueObjectDataSourceEventArgsInitialise une nouvelle instance de la classe ObjectDataSourceEventArgs à l'aide de l'objet spécifié.
Début

  NomDescription
Propriété publiqueObjectInstanceObtient ou définit un objet qui représente l'objet métier avec lequel le contrôle ObjectDataSource exécute des opérations de données.
Début

  NomDescription
Méthode publiqueEquals(Object)Détermine si l'objet spécifié est identique à l'objet actuel. (Hérité de Object.)
Méthode protégéeFinalize 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.)
Méthode publiqueGetHashCodeSert de fonction de hachage par défaut. (Hérité de Object.)
Méthode publiqueGetTypeObtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode protégéeMemberwiseCloneCrée une copie superficielle de l'objet Object actuel. (Hérité de Object.)
Méthode publiqueToStringRetourne une chaîne qui représente l'objet actif. (Hérité de Object.)
Début

La classe ObjectDataSourceEventArgs est utilisée dans les méthodes OnObjectCreating et OnObjectCreated pour fournir un accès à l'instance de l'objet métier avant que toute opération de données utilisant le contrôle ObjectDataSource et l'objet métier ne soit effectuée. L'objet métier est défini et son accès s'effectue à l'aide de la propriété ObjectInstance. 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 un code personnalisé au lieu de ObjectDataSource qui exécute l'instanciation. Ceci est utile lorsque vous souhaitez une instance non définie par défaut de votre objet métier ou souhaitez appeler un constructeur non défini par défaut pour créer l'instance ; ObjectDataSource appelle toujours le constructeur par défaut pour créer une instance de l'objet métier avec lequel elle travaille. Vous pouvez également ajouter un délégué de gestionnaire d'événements pour gérer l'événement ObjectCreated qui vous permet d'accéder à tous les membres de l'objet métier exposés publiquement pour exécuter toute initialisation ou travail supplémentaire.

Les méthodes OnObjectCreating et OnObjectCreated ne sont pas appelées par le contrôle ObjectDataSource, si la méthode de l'objet métier qui exécute les opérations de données est static.

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

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 la récupération des données.

ObjectDataSourceSelectingEventArgs

ObjectDataSourceSelectingEventHandler

Inserting , Updating et Deleting.

Se produisent avant une opération d'insertion, de mise à jour ou de suppression.

ObjectDataSourceMethodEventArgs

ObjectDataSourceMethodEventHandler

Selected .

Se produit après la récupération des données.

ObjectDataSourceStatusEventArgs

ObjectDataSourceStatusEventHandler

Inserted , Updated, Deleted.

Se produisent après l'opération d'insertion, de mise à jour ou de suppression.

ObjectDataSourceStatusEventArgs

ObjectDataSourceStatusEventHandler

ObjectDisposing .

Se produit avant la suppression d'un objet métier.

ObjectDataSourceDisposingEventArgs

ObjectDataSourceDisposingEventHandler

Cette section comprend deux exemples de code. Le premier exemple de code illustre comment utiliser un contrôle ObjectDataSource avec un objet métier et un contrôle GridView pour récupérer et afficher des informations. Le deuxième exemple de code fournit l'exemple d'objet métier de base utilisé par le premier exemple de code.

L'exemple de code suivant illustre comment utiliser un contrôle ObjectDataSource avec un objet métier et un contrôle GridView pour récupérer et afficher des informations. Dans cet exemple, comme dans beaucoup de scénarios réels, il est probable qu'il ne soit ni possible, ni approprié d'utiliser une instance de l'objet métier par défaut avec le contrôle ObjectDataSource. Dans cet exemple, ObjectDataSource ne peut pas joindre le constructeur par défaut, parce qu'il lèvera une exception. Dans certains cas, le constructeur par défaut peut être protégé et dans d'autres, il se peut qu'il n'initialise pas l'objet métier à l'état désiré. Quelle que soit la raison, vous pouvez vous-même créer une instance de l'objet métier et affecter à l'instance la propriété ObjectInstance de l'objet ObjectDataSourceEventArgs qui est passé au gestionnaire. Ceci est l'instance de l'objet métier que ObjectDataSource utilisera pour exécuter 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 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;
    }

  }

}


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft