Partager via


LinqDataSourceUpdateEventArgs Classe

Définition

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
LinqDataSourceUpdateEventArgs

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)

S’applique à

Voir aussi