Condividi tramite


ObjectChangeConflict Classe

Definizione

Rappresenta un tentativo di aggiornamento con uno o più conflitti di concorrenza ottimistica.

public ref class ObjectChangeConflict sealed
public sealed class ObjectChangeConflict
type ObjectChangeConflict = class
Public NotInheritable Class ObjectChangeConflict
Ereditarietà
ObjectChangeConflict

Esempio

Northwnd db = new Northwnd("...");

try
{
    db.SubmitChanges(ConflictMode.ContinueOnConflict);
}

catch (ChangeConflictException e)
{
    Console.WriteLine("Optimistic concurrency error.");
    Console.WriteLine(e.Message);
    foreach (ObjectChangeConflict occ in db.ChangeConflicts)
    {
        MetaTable metatable = db.Mapping.GetTable(occ.Object.GetType());
        Customer entityInConflict = (Customer)occ.Object;
        Console.WriteLine("Table name: {0}", metatable.TableName);
        Console.Write("Customer ID: ");
        Console.WriteLine(entityInConflict.CustomerID);
        Console.ReadLine();
    }
}
Dim db As New Northwnd("...")

Try
    db.SubmitChanges(ConflictMode.ContinueOnConflict)

Catch ex As ChangeConflictException
    Console.WriteLine("Optimistic concurrency error.")
    Console.WriteLine(ex.Message)
    For Each occ As ObjectChangeConflict In db.ChangeConflicts
        Dim metatable As MetaTable = db.Mapping.GetTable(occ.Object.GetType())
        Dim entityInConflict = occ.Object

        Console.WriteLine("Table name: " & metatable.TableName)
        Console.Write("Customer ID: ")
        Console.WriteLine(entityInConflict.CustomerID)
        Console.ReadLine()
    Next
End Try

Commenti

Questo scenario è uno in cui un tentativo di aggiornamento ha esito negativo perché i valori del database sono stati aggiornati dall'ultima lettura del client.

Nell'esempio seguente viene illustrato come recuperare informazioni sugli oggetti in conflitto.

Proprietà

IsDeleted

Ottiene un valore che indica se l'oggetto in conflitto è stato eliminato dal database.

IsResolved

Ottiene un valore che indica se i conflitti per questo oggetto sono già stati risolti.

MemberConflicts

Ottiene una raccolta di tutti i conflitti fra membri che hanno impedito l'aggiornamento.

Object

Ottiene l'oggetto in conflitto.

Metodi

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
Resolve()

Risolve i conflitti fra i membri mantenendo i valori correnti e reimpostando i valori originali di base in modo che corrispondano ai valori più recenti del database.

Resolve(RefreshMode)

Risolve i conflitti fra i membri utilizzando l'oggetto RefreshMode specificato.

Resolve(RefreshMode, Boolean)

Risolve i conflitti fra i membri mantenendo i valori correnti e reimpostando i valori originali di base.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a