Dalam lapisan akses data yang menggunakan kelas LINQ, adalah perkara biasa untuk menghadapi persoalan mengurus konteks data. Mari kita pertimbangkan coretan kod berikut:
private DataContext myDb; public static MyClass GetMyClassById(int id) { DataContext db = new DataContext(); MyClass result = (from item in db.MyClasss where item.id == id select item).Single(); result.myDb = db; return result; } public void Save() { db.SubmitChanges(); }
Corak ini menimbulkan persoalan tentang membuat seketika konteks data dan keperluan untuk melupuskannya. Untuk menangani perkara ini, kami berunding dengan Matt Warren daripada pasukan LINQ to SQL untuk mendapatkan bimbingan.
Menurut Warren, melaksanakan IDisposable mempunyai beberapa tujuan:
Warren menekankan bahawa dalam kebanyakan kes, melupuskan DataContexts tidak begitu diperlukan. Walau bagaimanapun, untuk ketekalan dan kejelasan, selalunya lebih baik untuk melupuskan sebarang objek yang melaksanakan IDisposable.
Atas ialah kandungan terperinci Bilakah Saya Perlu Membuang Konteks Data dalam LINQ ke SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!