SqlDataSourceStatusEventArgs 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 un événement qui est déclenché par le contrôle SqlDataSource après la fin d'une opération de données.
public ref class SqlDataSourceStatusEventArgs : EventArgs
public class SqlDataSourceStatusEventArgs : EventArgs
type SqlDataSourceStatusEventArgs = class
inherit EventArgs
Public Class SqlDataSourceStatusEventArgs
Inherits EventArgs
- Héritage
Exemples
L’exemple de code suivant montre comment utiliser la SqlDataSourceStatusEventArgs classe pour examiner la valeur de retour et les valeurs des paramètres de sortie retournés lors de l’utilisation d’un SqlDataSource contrôle avec une procédure stockée pour remplir un GridView contrôle. La procédure stockée sélectionne les données affichées dans , GridViewmais transmet également d’autres informations à l’appelant, telles qu’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 SelectParameters collection et se composent de paramètres qui transmettent des informations du formulaire Web à la procédure stockée, ainsi que des paramètres qui transmettent des informations au formulaire. La Direction propriété de ces paramètres est définie sur 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 xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" 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>
<%@Page Language="VB" %>
<%@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 Sub Submit(source As Object, e As EventArgs)
SqlDataSource1.Select(DataSourceSelectArguments.Empty)
End Sub ' Submit
' This event handler is called after the Select() method is executed.
Private Sub OnSelectedHandler(source As Object, e As SqlDataSourceStatusEventArgs)
Dim cmd As IDbCommand
cmd = e.Command
Dim param As SqlParameter
Label1.Text = "Parameter return values: "
For Each param In cmd.Parameters
' Extract the name and value of the parameter.
Label1.Text = Label1.Text & param.ParameterName & " - " & _
param.Value.ToString()
Next
End Sub ' OnSelectedHandler
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" 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>
Remarques
La SqlDataSourceStatusEventArgs classe est utilisée dans les Selectedévénements , Updated, Insertedet Deleted pour transmettre des informations sur une opération de base de données après qu’elle a été effectuée par le contrôle de source de données. Ces informations incluent le nombre de lignes affectées par l’opération, l’objet DbCommand utilisé par la source de données pour effectuer l’opération et toutes les informations d’exception qui en ont résulté. En ajoutant un délégué de gestionnaire d’événements pour gérer les Selectedévénements , Updatedou InsertedDeleted , vous pouvez examiner ces données et effectuer tout post-traitement supplémentaire requis.
Le SqlDataSource contrôle expose de nombreux événements que vous pouvez gérer pour utiliser les objets de données sous-jacents au cours d’une opération de données. Le tableau suivant répertorie les événements et les classes associées EventArgs et gestionnaires d’événements, pour mieux vous guider vers les différents événements qui correspondent au cycle de vie d’une opération de données à l’aide du SqlDataSource contrôle .
Événement | EventArgs | EventHandler |
---|---|---|
Selecting se produit avant la récupération des données. | SqlDataSourceSelectingEventArgs | SqlDataSourceSelectingEventHandler |
Inserting, Updatingse Deleting produit avant qu’une opération d’insertion, de mise à jour ou de suppression ne soit effectuée. | SqlDataSourceCommandEventArgs | SqlDataSourceCommandEventHandler |
Selected, Inserted, Updatedse Deleted produit une fois les opérations d’extraction, d’insertion, de mise à jour ou de suppression des données terminées. | SqlDataSourceStatusEventArgs | SqlDataSourceStatusEventHandler |
Constructeurs
SqlDataSourceStatusEventArgs(DbCommand, Int32, Exception) |
Initialise une nouvelle instance de la classe SqlDataSourceStatusEventArgs, à l'aide des paramètres de sortie spécifiés, de la valeur de retour et du nombre de lignes affecté par l'opération de base de données. |
Propriétés
AffectedRows |
Obtient le nombre de lignes affectées par une opération de base de données. |
Command |
Obtient la commande de base de données envoyée à la base de données. |
Exception |
Obtient un wrapper pour toutes les exceptions levées par la base de données pendant une opération de données. |
ExceptionHandled |
Obtient ou définit une valeur qui indique si une exception levée par la base de données a été gérée. |
Méthodes
Equals(Object) |
Détermine si l'objet spécifié est égal à l'objet actuel. (Hérité de Object) |
GetHashCode() |
Fait office de fonction de hachage par défaut. (Hérité de Object) |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
ToString() |
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |