Cette page vous a-t-elle été utile ?
Votre avis sur ce contenu est important. N'hésitez pas à nous faire part de vos commentaires.
Vous avez d'autres commentaires ?
1500 caractères restants
Exporter (0) Imprimer
Développer tout

SqlDataSourceStatusEventArgs, classe

Remarque : cette classe est nouvelle dans le .NET Framework version 2.0.

Fournit des données pour un événement qui est déclenché par le contrôle SqlDataSource après la fin d'une opération de données.

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

public class SqlDataSourceStatusEventArgs : EventArgs
public class SqlDataSourceStatusEventArgs extends EventArgs
public class SqlDataSourceStatusEventArgs extends EventArgs

La classe SqlDataSourceStatusEventArgs est utilisée dans les événements Selected, Updated, Inserted et Deleted pour passer des informations sur une opération de base de données après qu'elle ait été exécutée par le contrôle de source de données. Ces informations incluent le nombre de lignes affecté par l'opération, l'objet DbCommand que la source de données a utilisé pour exécuter l'opération, et toutes les informations sur les exceptions qui en ont résulté. En ajoutant un délégué de gestionnaire d'événements pour gérer les événements Selected, Updated, Inserted ou événements Deleted, vous pouvez examiner ces données et exécuter les opérations post-traitement supplémentaires requises.

Le contrôle SqlDataSource expose de nombreux événements que vous pouvez gérer pour travailler avec les objets de données sous-jacents pendant le déroulement d'une opération de données. Le tableau suivant répertorie les événements, ainsi que les EventArgs et les classes de gestionnaire d'événements associés, pour mieux vous guider vers les divers événements qui correspondent au cycle de vie d'une opération de données utilisant le contrôle SqlDataSource.

Événement

EventArgs

EventHandler

Selecting se produit avant la récupération des données.

SqlDataSourceSelectingEventArgs

SqlDataSourceSelectingEventHandler

Inserting, Updating, Deleting se produisent avant une opération d'insertion, de mise à jour ou de suppression.

SqlDataSourceCommandEventArgs

SqlDataSourceCommandEventHandler

Selected, Inserted, Updated, Deleted se produisent une fois terminées la récupération, l'insertion, la mise à jour ou la suppression des données.

SqlDataSourceStatusEventArgs

SqlDataSourceStatusEventHandler

L'exemple de code suivant montre comment utiliser la classe SqlDataSourceStatusEventArgs pour examiner la valeur de retour et les valeurs des paramètres de sortie qui sont retournés lors de l'utilisation d'un contrôle SqlDataSource avec une procédure stockée pour remplir un contrôle GridView. La procédure stockée sélectionne des données qui sont affichées dans le GridView, mais retourne également d'autres informations à l'appelant, par exemple un paramètre de sortie entier et une valeur de retour. Les paramètres que le SqlDataSource utilise pour la procédure stockée sont contenus dans la collection SelectParameters et se composent des paramètres qui passent des informations du formulaire Web à la procédure stockée aussi bien que des paramètres qui retournent des informations au formulaire. La propriété Direction de ces paramètres a les valeurs Output et ReturnValue.

<%@Page  Language="C#" %>
<%@Import Namespace="System.Data" %>
<%@Import Namespace="System.Data.Common" %>
<%@Import Namespace="System.Data.SqlClient" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<SCRIPT runat="server">
// Clicking the Submit button explicitly refreshes the data 
// by calling the Select() method.
private void Submit(Object source, EventArgs e) {
  SqlDataSource1.Select(DataSourceSelectArguments.Empty);
}

// This event handler is called after the Select() method is executed.
private void OnSelectedHandler(Object source, SqlDataSourceStatusEventArgs e) {

  IDbCommand cmd = e.Command; 
  
  Label1.Text = "Parameter return values: ";

  foreach (SqlParameter param in cmd.Parameters) {
    //  Extract the value of the parameter.
    Label1.Text += param.ParameterName + " - " + param.Value.ToString();
  }
}
</SCRIPT>

<html>
  <body>
    <form runat="server">
        <asp:sqldatasource
            id="SqlDataSource1"
            runat="server"
            datasourcemode="DataSet"
            connectionstring="<%$ ConnectionStrings:MyNorthwind%>"
            selectcommand="getordertotal"
            onselected="OnSelectedHandler">
            <selectparameters>
              <asp:querystringparameter name="empId" querystringfield="empId" />
              <asp:parameter name="total" type="Int32" direction="Output" defaultvalue="0" />
              <asp:parameter name="_ret" type="Int32" direction="ReturnValue" defaultvalue="0" />
            </selectparameters>
        </asp:sqldatasource>
        <!--
          CREATE PROCEDURE dbo.getordertotal
            @empId int,
            @total int OUTPUT
          as
            set nocount on
            select @total    = count(1) from orders where employeeid=@empid;
            select * from orders where employeeID = @empId ;
            return (-1000);
          GO
        -->

        <asp:gridview
          id="GridView1"
          runat="server"
          allowpaging="True"
          pagesize="5"
          datasourceid="SqlDataSource1" />

        <asp:button
          id="Button1"
          runat="server"
          onclick="Submit"
          text="Refresh Data" />

        <asp:label id="Label1" runat="server" />

    </form>
  </body>
</html>

  • AspNetHostingPermission  pour opérer dans un environnement hébergé. Valeur de demande : LinkDemand ; valeur d'autorisation : Minimal
  • AspNetHostingPermission  pour opérer dans un environnement hébergé. Valeur de demande : InheritanceDemand ; valeur d'autorisation : Minimal

System.Object
   System.EventArgs
    System.Web.UI.WebControls.SqlDataSourceStatusEventArgs

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

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

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

.NET Framework

Prise en charge dans : 2.0

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft