Bagikan melalui


ObjectContext.Detach(Object) Metode

Definisi

Menghapus objek dari konteks objek.

public:
 void Detach(System::Object ^ entity);
public void Detach (object entity);
member this.Detach : obj -> unit
Public Sub Detach (entity As Object)

Parameter

entity
Object

Objek yang akan dicopot. entity Hanya yang dihapus; jika ada objek terkait yang dilacak oleh yang sama ObjectStateManager, objek tersebut tidak akan dilepas secara otomatis.

Pengecualian

entity adalah null.

entity tidak terkait dengan ini ObjectContext (misalnya, baru dibuat dan belum terkait dengan konteks apa pun, atau diperoleh melalui beberapa konteks lain, atau sudah dicopot).

Contoh

// This method is called to detach SalesOrderHeader objects and
// related SalesOrderDetail objects from the supplied object
// context when no longer needed by the application.
// Once detached, the resources can be garbage collected.
private static void DetachOrders(ObjectContext context,
    SalesOrderHeader order)
{
    try
    {
        // Detach each item from the collection.
        while (order.SalesOrderDetails.Count > 0)
        {
            // Detach the first SalesOrderDetail in the collection.
            context.Detach(order.SalesOrderDetails.First());
        }

        // Detach the order.
        context.Detach(order);
    }
    catch (InvalidOperationException ex)
    {
        Console.WriteLine(ex.ToString());
    }
}

Keterangan

Menghapus objek dari ObjectStateManager. Ini menonaktifkan pelacakan perubahan dan resolusi identitas untuk objek tersebut. Untuk informasi selengkapnya, lihat Melampirkan dan Melepaskan Objek.

Detach Setelah metode dipanggil, sistem tidak akan lagi menyimpan referensi yang menunjuk ke objek ini dan dapat dikumpulkan oleh pengumpul sampah.

Catatan

Pengumpulan sampah hanya dapat terjadi jika kode pengguna tidak memiliki referensi apa pun ke objek yang dilepaskan.

Pertimbangan berikut berlaku saat mencopot objek:

  • Detach hanya memengaruhi objek tertentu yang diteruskan ke metode . Jika objek yang dicopot memiliki objek terkait dalam konteks objek, objek tersebut tidak akan terlepas.

  • Mencopot objek tidak memengaruhi data di sumber data.

  • Arahan penghapusan bertingkat dan batasan referensial tidak diberlakukan selama operasi pelampiran.

Untuk informasi selengkapnya, lihat Melampirkan dan Melepaskan Objek.

Berlaku untuk

Lihat juga