Udostępnij za pośrednictwem


ObjectChangeConflict Klasa

Definicja

Reprezentuje próbę aktualizacji z co najmniej jednym optymistycznym konfliktem współbieżności.

public ref class ObjectChangeConflict sealed
public sealed class ObjectChangeConflict
type ObjectChangeConflict = class
Public NotInheritable Class ObjectChangeConflict
Dziedziczenie
ObjectChangeConflict

Przykłady

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

Uwagi

Ten scenariusz polega na tym, że próba aktualizacji kończy się niepowodzeniem, ponieważ wartości bazy danych zostały zaktualizowane od czasu ostatniego odczytania przez klienta.

W poniższym przykładzie pokazano, jak pobrać informacje o obiektach w konflikcie.

Właściwości

IsDeleted

Pobiera wartość wskazującą, czy obiekt w konflikcie został usunięty z bazy danych.

IsResolved

Pobiera wartość wskazującą, czy konflikty dla tego obiektu zostały już rozwiązane.

MemberConflicts

Pobiera kolekcję wszystkich konfliktów składowych, które spowodowały niepowodzenie aktualizacji.

Object

Pobiera obiekt w konflikcie.

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 bieżące wystąpienie.

(Odziedziczone po Object)
MemberwiseClone()

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

(Odziedziczone po Object)
Resolve()

Rozwiązuje konflikty elementów członkowskich, zachowując bieżące wartości i resetując oryginalne wartości punktu odniesienia w celu dopasowania ich do nowszych wartości bazy danych.

Resolve(RefreshMode)

Rozwiązuje konflikty elementów członkowskich przy użyciu określonego RefreshModeelementu .

Resolve(RefreshMode, Boolean)

Rozwiąż konflikty składowe, utrzymując bieżące wartości i resetując oryginalne wartości punktu odniesienia.

ToString()

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

(Odziedziczone po Object)

Dotyczy