LinqDataSourceUpdateEventArgs 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 l'événement Updating.
public ref class LinqDataSourceUpdateEventArgs : System::ComponentModel::CancelEventArgs
public class LinqDataSourceUpdateEventArgs : System.ComponentModel.CancelEventArgs
type LinqDataSourceUpdateEventArgs = class
inherit CancelEventArgs
Public Class LinqDataSourceUpdateEventArgs
Inherits CancelEventArgs
- Héritage
Exemples
L’exemple suivant montre un gestionnaire d’événements pour l’événement Updating . L’exemple montre comment comparer les propriétés de la OriginalObject propriété et de la NewObject propriété pour déterminer si la valeur de la Category
propriété a changé. Si c’est le cas, la CategoryChanged
propriété de l’objet dans la NewObject propriété est définie sur true
.
protected void LinqDataSource_Updating(object sender, LinqDataSourceUpdateEventArgs e)
{
Product originalProduct = (Product)e.OriginalObject;
Product newProduct = (Product)e.NewObject;
if (originalProduct.Category != newProduct.Category)
{
newProduct.CategoryChanged = true;
}
}
Protected Sub LinqDataSource_Updating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LinqDataSourceUpdateEventArgs)
Dim originalProduct As Product
Dim newProduct As Product
originalProduct = CType(e.OriginalObject, Product)
newProduct = CType(e.NewObject, Product)
If (originalProduct.Category <> newProduct.Category) Then
newProduct.CategoryChanged = True
End If
End Sub
L’exemple suivant montre un gestionnaire d’événements pour l’événement Updating . Il affiche tous les messages d’exception de validation à l’aide d’un Label contrôle.
Protected Sub LinqDataSource_Updating(ByVal sender As Object, _
ByVal e As LinqDataSourceUpdateEventArgs)
If (e.Exception IsNot Nothing) Then
For Each innerException As KeyValuePair(Of String, Exception) _
In e.Exception.InnerExceptions
Label1.Text &= innerException.Key & ": " & _
innerException.Value.Message & "<br />"
Next
e.ExceptionHandled = True
End If
End Sub
protected void LinqDataSource_Updating(object sender,
LinqDataSourceUpdateEventArgs e)
{
if (e.Exception != null)
{
foreach (KeyValuePair<string, Exception> innerException in
e.Exception.InnerExceptions)
{
Label1.Text += innerException.Key + ": " +
innerException.Value.Message + "<br />";
}
e.ExceptionHandled = true;
}
}
Remarques
L’objet LinqDataSourceUpdateEventArgs est passé à n’importe quel gestionnaire d’événements pour l’événement Updating . Vous pouvez utiliser l’objet LinqDataSourceUpdateEventArgs pour examiner les données avant l’exécution de l’opération de mise à jour dans la source de données. Vous pouvez ensuite valider les données, examiner les exceptions de validation levées par la classe de données ou modifier une valeur avant la mise à jour. Vous pouvez également annuler l’opération de mise à jour.
L’objet OriginalObject contient les données qui ont été récupérées à l’origine à partir de la source de données. L’objet NewObject contient les données qui seront enregistrées dans la source de données pendant l’opération de mise à jour.
Si l’objet qui représente la source de données lève une exception de validation avant de mettre à jour les données, la Exception propriété contient un instance de la LinqDataSourceValidationException classe. Vous pouvez récupérer toutes les exceptions de validation via la InnerExceptions propriété . Si aucune exception de validation n’est levée, la Exception propriété contient null
. Si vous gérez les exceptions de validation et que vous ne souhaitez pas que l’exception soit levée à nouveau, définissez la propriété sur ExceptionHandledtrue
.
Par défaut, le LinqDataSource contrôle stocke les valeurs d’origine de la source de données dans l’état d’affichage sur la page Web, à l’exception de celles dont ColumnAttribute l’attribut est marqué comme UpdateCheck.Never
. LINQ to SQL vérifie automatiquement l’intégrité des données avant de les mettre à jour. Pour ce faire, il compare les valeurs actuelles dans la source de données avec les valeurs d’origine stockées dans l’état d’affichage. LINQ to SQL lève une exception si les valeurs de la source de données ont changé. Vous pouvez effectuer une validation de données supplémentaire en créant un gestionnaire pour l’événement Updating .
Constructeurs
LinqDataSourceUpdateEventArgs(LinqDataSourceValidationException) |
Initialise une nouvelle instance de la classe LinqDataSourceUpdateEventArgs avec l'exception spécifiée. |
LinqDataSourceUpdateEventArgs(Object, Object) |
Initialise une nouvelle instance de la classe LinqDataSourceUpdateEventArgs. |
Propriétés
Cancel |
Obtient ou définit une valeur indiquant si l'événement doit être annulé. (Hérité de CancelEventArgs) |
Exception |
Obtient l'exception levée lors de la validation des données avant l'opération de mise à jour. |
ExceptionHandled |
Obtient ou définit une valeur qui indique si l'exception a été gérée et qu'elle ne doit plus être levée. |
NewObject |
Obtient l'objet contenant les valeurs qui seront enregistrées dans la source de données. |
OriginalObject |
Obtient l'objet qui contient les valeurs récupérées à l'origine de la source de données. |
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) |