ObjectChangeConflict Sınıf

Tanım

Bir veya daha fazla iyimser eşzamanlılık çakışması olan bir güncelleştirme denemesini temsil eder.

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

Örnekler

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

Açıklamalar

Bu senaryo, istemcinin son okuma tarihinden bu yana veritabanı değerleri güncelleştirildiğinden güncelleştirme girişiminin başarısız olduğu senaryodur.

Aşağıdaki örnekte, çakışan nesneler hakkında bilgi alma gösterilmektedir.

Özellikler

Name Description
IsDeleted

Çakışan nesnenin veritabanından silinip silinmediğini gösteren bir değer alır.

IsResolved

Bu nesnenin çakışmalarının zaten çözülmüş olup olmadığını gösteren bir değer alır.

MemberConflicts

Güncelleştirmenin başarısız olmasına neden olan tüm üye çakışmalarından oluşan bir koleksiyon alır.

Object

Nesneyi çakışan alır.

Yöntemler

Name Description
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
Resolve()

Geçerli değerleri koruyarak ve temel özgün değerleri daha yeni veritabanı değerleriyle eşleşecek şekilde sıfırlayarak üye çakışmalarını çözer.

Resolve(RefreshMode, Boolean)

Geçerli değerleri saklayan ve temel özgün değerleri sıfırlayan üye çakışmalarını çözün.

Resolve(RefreshMode)

Belirtilen RefreshModekullanarak üye çakışmalarını çözer.

ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır