LinqDataSourceUpdateEventArgs Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Proporciona datos para el evento Updating.
public ref class LinqDataSourceUpdateEventArgs : System::ComponentModel::CancelEventArgs
public class LinqDataSourceUpdateEventArgs : System.ComponentModel.CancelEventArgs
type LinqDataSourceUpdateEventArgs = class
inherit CancelEventArgs
Public Class LinqDataSourceUpdateEventArgs
Inherits CancelEventArgs
- Herencia
Ejemplos
En el ejemplo siguiente se muestra un controlador de eventos para el Updating evento. En el ejemplo se muestra cómo comparar las propiedades de la OriginalObject propiedad y la NewObject propiedad para determinar si el valor de la Category
propiedad ha cambiado. Si es así, la CategoryChanged
propiedad del objeto de la NewObject propiedad se establece true
en .
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
En el ejemplo siguiente se muestra un controlador de eventos para el Updating evento. Muestra los mensajes de excepción de validación mediante un Label control .
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;
}
}
Comentarios
El LinqDataSourceUpdateEventArgs objeto se pasa a cualquier controlador de eventos para el Updating evento. Puede usar el LinqDataSourceUpdateEventArgs objeto para examinar los datos antes de que se ejecute la operación de actualización en el origen de datos. A continuación, puede validar los datos, examinar las excepciones de validación producidas por la clase de datos o cambiar un valor antes de la actualización. También puede cancelar la operación de actualización.
El OriginalObject objeto contiene los datos que se recuperaron originalmente del origen de datos. El NewObject objeto contiene los datos que se guardarán en el origen de datos durante la operación de actualización.
Si el objeto que representa el origen de datos produce una excepción de validación antes de actualizar los datos, la Exception propiedad contiene una instancia de la LinqDataSourceValidationException clase . Puede recuperar todas las excepciones de validación a través de la InnerExceptions propiedad . Si no se produce ninguna excepción de validación, la Exception propiedad contiene null
. Si controla las excepciones de validación y no desea que se vuelva a iniciar la excepción, establezca la ExceptionHandled propiedad true
en .
De forma predeterminada, el LinqDataSource control almacena los valores originales del origen de datos en estado de vista en la página web, excepto aquellos cuyo ColumnAttribute atributo está marcado como UpdateCheck.Never
. LINQ to SQL comprueba automáticamente la integridad de los datos antes de actualizar los datos. Para ello, compara los valores actuales del origen de datos con los valores originales almacenados en estado de vista. LINQ to SQL genera una excepción si los valores del origen de datos han cambiado. Puede realizar una validación de datos adicional mediante la creación de un controlador para el Updating evento.
Constructores
LinqDataSourceUpdateEventArgs(LinqDataSourceValidationException) |
Inicializa una nueva instancia de la clase LinqDataSourceUpdateEventArgs con la excepción especificada. |
LinqDataSourceUpdateEventArgs(Object, Object) |
Inicializa una nueva instancia de la clase LinqDataSourceUpdateEventArgs. |
Propiedades
Cancel |
Obtiene o establece un valor que indica si se debe cancelar el evento. (Heredado de CancelEventArgs) |
Exception |
Obtiene la excepción que se produjo mientras se validaban los datos antes de la operación de actualización. |
ExceptionHandled |
Obtiene o establece un valor que indica si se controló la excepción y que no se debería iniciar de nuevo. |
NewObject |
Obtiene el objeto que contiene los valores que se guardarán en el origen de datos. |
OriginalObject |
Obtiene el objeto que contiene los valores que se recuperaron originalmente del origen de datos. |
Métodos
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |