LinqDataSourceUpdateEventArgs Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Innehåller data för Updating händelsen.
public ref class LinqDataSourceUpdateEventArgs : System::ComponentModel::CancelEventArgs
public class LinqDataSourceUpdateEventArgs : System.ComponentModel.CancelEventArgs
type LinqDataSourceUpdateEventArgs = class
inherit CancelEventArgs
Public Class LinqDataSourceUpdateEventArgs
Inherits CancelEventArgs
- Arv
Exempel
I följande exempel visas en händelsehanterare för Updating händelsen. Exemplet visar hur du jämför egenskaper från OriginalObject egenskapen och NewObject egenskapen för att avgöra om värdet i Category egenskapen har ändrats. I så fall CategoryChanged är egenskapen för objektet i NewObject egenskapen inställd på 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
I följande exempel visas en händelsehanterare för Updating händelsen. Den visar eventuella verifieringsfelmeddelanden med hjälp av en Label kontroll.
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;
}
}
Kommentarer
Objektet LinqDataSourceUpdateEventArgs skickas till alla händelsehanterare för Updating händelsen. Du kan använda LinqDataSourceUpdateEventArgs objektet för att undersöka data innan uppdateringsåtgärden körs i datakällan. Du kan sedan verifiera data, granska valideringsfel som genereras av dataklassen eller ändra ett värde före uppdateringen. Du kan också avbryta uppdateringsåtgärden.
Objektet OriginalObject innehåller de data som ursprungligen hämtades från datakällan. Objektet NewObject innehåller de data som ska sparas i datakällan under uppdateringsåtgärden.
Om objektet som representerar datakällan genererar ett verifieringsfel innan data uppdateras, Exception innehåller egenskapen en instans av LinqDataSourceValidationException klassen. Du kan hämta alla verifieringsfel via egenskapen InnerExceptions . Om inget verifieringsfel utlöses innehåller Exceptionegenskapen null . Om du hanterar verifieringsfelen och inte vill att undantaget ska genereras igen anger du ExceptionHandled egenskapen till true.
Som standard LinqDataSource lagrar kontrollen de ursprungliga värdena från datakällan i visningstillstånd på webbsidan, förutom de vars attribut har markerats ColumnAttribute som UpdateCheck.Never. LINQ till SQL kontrollerar dataintegriteten automatiskt innan data uppdateras. Det gör den genom att jämföra de aktuella värdena i datakällan med de ursprungliga värdena som lagras i visningstillståndet. LINQ till SQL genererar ett undantag om värdena i datakällan har ändrats. Du kan utföra ytterligare dataverifiering genom att skapa en hanterare för Updating händelsen.
Konstruktorer
| Name | Description |
|---|---|
| LinqDataSourceUpdateEventArgs(LinqDataSourceValidationException) |
Initierar en ny instans av LinqDataSourceUpdateEventArgs klassen med det angivna undantaget. |
| LinqDataSourceUpdateEventArgs(Object, Object) |
Initierar en ny instans av LinqDataSourceUpdateEventArgs klassen. |
Egenskaper
| Name | Description |
|---|---|
| Cancel |
Hämtar eller anger ett värde som anger om händelsen ska avbrytas. (Ärvd från CancelEventArgs) |
| Exception |
Hämtar undantaget som utlöstes när data verifierades före uppdateringsåtgärden. |
| ExceptionHandled |
Hämtar eller anger ett värde som anger om undantaget hanterades och att det inte ska genereras igen. |
| NewObject |
Hämtar objektet som innehåller de värden som ska sparas i datakällan. |
| OriginalObject |
Hämtar objektet som innehåller de värden som ursprungligen hämtades från datakällan. |
Metoder
| Name | Description |
|---|---|
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |