Freigeben über


Vorgehensweise: Anzeigen eines ChangeSet (LINQ to SQL)

Sie können die von einem DataContext verfolgten Änderungen mithilfe von GetChangeSet anzeigen.

Beispiel

Im folgenden Beispiel werden Kunden aus London abgerufen, der Ort wird in Paris geändert, und die Änderungen werden wieder an die Datenbank übergeben.

Dim db As New Northwnd("c:\northwnd.mdf")

Dim custQuery = _
    From cust In db.Customers _
    Where (cust.City = "London") _
    Select cust

For Each custObj As Customer In custQuery
    Console.WriteLine("CustomerID: {0}", custObj.CustomerID)
    Console.WriteLine(vbTab & "Original value: {0}", custObj.City)
    custObj.City = "Paris"
    Console.WriteLine(vbTab & "Updated value: {0}", custObj.City)
Next

Dim cs As ChangeSet = db.GetChangeSet()
Console.Write("Total changes: {0}", cs)
' Freeze the console window.
Console.ReadLine()

db.SubmitChanges()
Northwnd db = new Northwnd(@"c:\northwnd.mdf");

var custQuery =
    from cust in db.Customers
    where cust.City == "London"
    select cust;

foreach (Customer custObj in custQuery)
{
    Console.WriteLine("CustomerID: {0}", custObj.CustomerID);
    Console.WriteLine("\tOriginal value: {0}", custObj.City);
    custObj.City = "Paris";
    Console.WriteLine("\tUpdated value: {0}", custObj.City);
}

ChangeSet cs = db.GetChangeSet();
Console.Write("Total changes: {0}", cs);
// Freeze the console window.
Console.ReadLine();

db.SubmitChanges();

Die Ausgabe dieses Codes ähnelt der folgenden. Beachten Sie, dass die Zusammenfassung am Ende zeigt, dass acht Änderungen vorgenommen wurden.

CustomerID: AROUT

    Original value: London

    Updated value: Paris

CustomerID: BSBEV

    Original value: London

    Updated value: Paris

CustomerID: CONSH

    Original value: London

    Updated value: Paris

CustomerID: EASTC

    Original value: London

    Updated value: Paris

CustomerID: NORTS

    Original value: London

    Updated value: Paris

CustomerID: PARIS

    Original value: London

    Updated value: Paris

CustomerID: SEVES

    Original value: London

    Updated value: Paris

CustomerID: SPECD

    Original value: London

    Updated value: Paris

 

Total changes: {Added: 0, Removed: 0, Modified: 8}

Siehe auch

Weitere Ressourcen

Debuggingunterstützung (LINQ to SQL)