Kemas Kini SQL Terus dengan LINQ tanpa Pilih
Dalam LINQ, adalah mungkin untuk menjana perintah kemas kini SQL tanpa menggunakan pernyataan pilih, membolehkan langsung kemas kini pada pangkalan data.
Untuk mencapai matlamat ini, gunakan perkara berikut pendekatan:
Buat objek dan tetapkan sifat utamanya:
Foo foo=new Foo { FooId=fooId };
Lampirkan objek kepada konteks:
context.Foos.Attach(foo);
Kemas kini sifat objek seperti yang diperlukan:
foo.Name="test";
Serahkan perubahan kepada pangkalan data:
context.SubmitChanges();
Secara lalai, LINQ-to-SQL menggunakan "UpdateCheck" untuk menjejaki perubahan dalam sifat objek. Menetapkannya kepada "Jangan sekali-kali" untuk semua sifat memastikan LINQ tidak akan melakukan sebarang pertanyaan terpilih untuk mengesan perubahan. Sebaliknya, ia menjana pernyataan kemas kini langsung.
Untuk mengemas kini sifat boleh null, mulakan objek dengan nilai bukan nol untuk harta tersebut dan kemudian tetapkannya kepada null untuk mencetuskan kemas kini.
Selain itu , untuk menyemak cap waktu semasa kemas kini, tetapkan sifat "Diubah suai" kepada "UpdateCheck=Sentiasa" dalam model pangkalan data (dbml). Ini membolehkan LINQ mengesahkan sama ada objek telah berubah sejak pengambilan terakhir.
Atas ialah kandungan terperinci Bagaimana untuk Melakukan Kemas Kini SQL Langsung dalam LINQ tanpa Menggunakan Pernyataan SELECT?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!