Поделиться через


LinqDataSourceUpdateEventArgs Класс

Определение

Предоставляет данные о событии Updating.

public ref class LinqDataSourceUpdateEventArgs : System::ComponentModel::CancelEventArgs
public class LinqDataSourceUpdateEventArgs : System.ComponentModel.CancelEventArgs
type LinqDataSourceUpdateEventArgs = class
    inherit CancelEventArgs
Public Class LinqDataSourceUpdateEventArgs
Inherits CancelEventArgs
Наследование
LinqDataSourceUpdateEventArgs

Примеры

В следующем примере показан обработчик событий для Updating события . В примере показано, как сравнить свойства свойства OriginalObject и свойства , NewObject чтобы определить, изменилось ли значение в свойстве Category . Если это так, CategoryChanged то свойству объекта в свойстве NewObject присваивается значение 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

В следующем примере показан обработчик событий для Updating события . Он отображает все сообщения об исключениях проверки с помощью 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;  
    }  
}  

Комментарии

Объект LinqDataSourceUpdateEventArgs передается в любой обработчик событий для Updating события. Объект можно использовать для LinqDataSourceUpdateEventArgs проверки данных перед выполнением операции обновления в источнике данных. Затем можно проверить данные, изучить исключения проверки, создаваемые классом данных, или изменить значение перед обновлением. Вы также можете отменить операцию обновления.

Объект OriginalObject содержит данные, которые были изначально получены из источника данных. Объект NewObject содержит данные, которые будут сохранены в источнике данных во время операции обновления.

Если объект, представляющий источник данных, вызывает исключение проверки перед обновлением Exception данных, свойство содержит экземпляр LinqDataSourceValidationException класса . Все исключения проверки можно получить с помощью InnerExceptions свойства . Если исключение проверки не создается, Exception свойство содержит null. Если вы обрабатываете исключения проверки и не хотите повторно создавать исключение, присвойте свойству ExceptionHandled значение true.

По умолчанию LinqDataSource элемент управления сохраняет исходные значения из источника данных в состоянии просмотра на веб-странице, за исключением тех, атрибут которых ColumnAttribute помечен как UpdateCheck.Never. LINQ to SQL автоматически проверяет целостность данных перед их обновлением. Это делается путем сравнения текущих значений в источнике данных с исходными значениями, хранящимися в состоянии представления. LINQ to SQL вызывает исключение, если значения в источнике данных изменились. Вы можете выполнить дополнительную проверку данных, создав обработчик для Updating события .

Конструкторы

LinqDataSourceUpdateEventArgs(LinqDataSourceValidationException)

Инициализирует новый экземпляр класса LinqDataSourceUpdateEventArgs с указанным исключением.

LinqDataSourceUpdateEventArgs(Object, Object)

Инициализирует новый экземпляр класса LinqDataSourceUpdateEventArgs.

Свойства

Cancel

Возвращает или задает значение, показывающее, следует ли отменить событие.

(Унаследовано от CancelEventArgs)
Exception

Возвращает исключение, выданное при проверке данных перед выполнением операции обновления.

ExceptionHandled

Возвращает или задает значение, позволяющее определить, было ли обработано исключение и должно ли оно выбрасываться снова.

NewObject

Возвращает объект, содержащий значения, которые будут сохранены в источнике данных.

OriginalObject

Возвращает объект, который содержит значения, изначально извлеченные из источника данных.

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Применяется к

См. также раздел