Udostępnij za pośrednictwem


LinqDataSourceUpdateEventArgs Klasa

Definicja

Udostępnia dane dla zdarzenia Updating.

public ref class LinqDataSourceUpdateEventArgs : System::ComponentModel::CancelEventArgs
public class LinqDataSourceUpdateEventArgs : System.ComponentModel.CancelEventArgs
type LinqDataSourceUpdateEventArgs = class
    inherit CancelEventArgs
Public Class LinqDataSourceUpdateEventArgs
Inherits CancelEventArgs
Dziedziczenie
LinqDataSourceUpdateEventArgs

Przykłady

Poniższy przykład przedstawia procedurę obsługi zdarzeń dla Updating zdarzenia. W przykładzie pokazano, jak porównać właściwości z OriginalObject właściwości i NewObject właściwość, aby określić, czy wartość we Category właściwości została zmieniona. Jeśli tak, CategoryChanged właściwość obiektu we NewObject właściwości jest ustawiona na wartość 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

Poniższy przykład przedstawia procedurę obsługi zdarzeń dla Updating zdarzenia. Wyświetla wszystkie komunikaty wyjątków weryfikacji przy użyciu kontrolki Label .

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;  
    }  
}  

Uwagi

Obiekt LinqDataSourceUpdateEventArgs jest przekazywany do dowolnej procedury obsługi zdarzeń dla zdarzenia Updating . Obiekt umożliwia LinqDataSourceUpdateEventArgs sprawdzenie danych przed wykonaniem operacji aktualizacji w źródle danych. Następnie możesz zweryfikować dane, sprawdzić wyjątki weryfikacji zgłoszone przez klasę danych lub zmienić wartość przed aktualizacją. Możesz również anulować operację aktualizacji.

Obiekt OriginalObject zawiera dane, które zostały pierwotnie pobrane ze źródła danych. Obiekt NewObject zawiera dane, które zostaną zapisane w źródle danych podczas operacji aktualizacji.

Jeśli obiekt reprezentujący źródło danych zgłasza wyjątek weryfikacji przed zaktualizowaniem danych, Exception właściwość zawiera wystąpienie LinqDataSourceValidationException klasy. Wszystkie wyjątki weryfikacji można pobrać za pomocą InnerExceptions właściwości . Jeśli nie zostanie zgłoszony wyjątek sprawdzania poprawności, Exception właściwość zawiera nullwartość . Jeśli obsługujesz wyjątki weryfikacji i nie chcesz, aby wyjątek został ponownie zgłoszony, ustaw ExceptionHandled właściwość na true.

Domyślnie kontrolka LinqDataSource przechowuje oryginalne wartości ze źródła danych w stanie widoku na stronie sieci Web, z wyjątkiem tych, których ColumnAttribute atrybut jest oznaczony jako UpdateCheck.Never. LINQ to SQL automatycznie sprawdza integralność danych przed zaktualizowaniem danych. Robi to, porównując bieżące wartości w źródle danych z oryginalnymi wartościami przechowywanymi w stanie widoku. LinQ to SQL zgłasza wyjątek, jeśli wartości w źródle danych uległy zmianie. Możesz przeprowadzić dodatkową weryfikację danych, tworząc procedurę obsługi dla zdarzenia Updating .

Konstruktory

LinqDataSourceUpdateEventArgs(LinqDataSourceValidationException)

Inicjuje LinqDataSourceUpdateEventArgs nowe wystąpienie klasy z określonym wyjątkiem.

LinqDataSourceUpdateEventArgs(Object, Object)

Inicjuje nowe wystąpienie klasy LinqDataSourceUpdateEventArgs.

Właściwości

Cancel

Pobiera lub ustawia wartość wskazującą, czy zdarzenie powinno zostać anulowane.

(Odziedziczone po CancelEventArgs)
Exception

Pobiera wyjątek zgłoszony podczas sprawdzania poprawności danych przed operacją aktualizacji.

ExceptionHandled

Pobiera lub ustawia wartość, która wskazuje, czy wyjątek został obsłużony i że nie powinien być zgłaszany ponownie.

NewObject

Pobiera obiekt zawierający wartości, które zostaną zapisane w źródle danych.

OriginalObject

Pobiera obiekt zawierający wartości, które zostały pierwotnie pobrane ze źródła danych.

Metody

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Dotyczy

Zobacz też