Bagikan melalui


LinqDataSource.StoreOriginalValuesInViewState Properti

Definisi

Mendapatkan atau mengatur nilai yang menunjukkan apakah data dari sumber data harus disimpan dalam status tampilan untuk memastikan bahwa data belum diubah oleh proses lain sebelum diperbarui atau dihapus.

public:
 property bool StoreOriginalValuesInViewState { bool get(); void set(bool value); };
public bool StoreOriginalValuesInViewState { get; set; }
member this.StoreOriginalValuesInViewState : bool with get, set
Public Property StoreOriginalValuesInViewState As Boolean

Nilai Properti

true jika nilai akan disimpan dalam status tampilan; jika tidak, false. Nilai defaultnya adalah true.

Keterangan

Secara default, ketika operasi pembaruan dan penghapusan telah diaktifkan, LinqDataSource kontrol menyimpan nilai asli untuk semua rekaman dalam status tampilan. Kontrol LinqDataSource menyimpan nilai untuk semua kunci primer dan semua properti yang tidak ditandai dengan UpdateCheck.Never dalam Column atribut . Anda mengatur UpdateCheck properti Column atribut di Perancang O/R.

Sebelum LINQ ke SQL memperbarui atau menghapus data, LINQ akan memeriksa nilai dalam status tampilan terhadap nilai saat ini di sumber data. Jika nilai tidak cocok, rekaman sumber data telah berubah. Dalam hal ini, LINQ ke SQL memberikan pengecualian dan tidak melanjutkan operasi pembaruan atau penghapusan. Untuk informasi selengkapnya tentang LINQ ke SQL, lihat LINQ ke SQL.

Menyimpan nilai asli dalam status tampilan dapat menyebabkan ukuran halaman menjadi tidak perlu besar dan dapat mengekspos data sensitif ke pengguna berbahaya. Anda dapat menonaktifkan penyimpanan nilai dalam status tampilan dengan mengatur StoreOriginalValuesInViewState properti ke false. Jika Anda melakukan ini, Anda harus menyediakan cara Anda sendiri untuk memastikan bahwa data belum berubah. Jika Anda mengatur StoreOriginalValuesInViewState properti ke false, nilai asli tidak bertahan dalam status tampilan untuk kontrol terikat data. Dalam hal ini, LINQ ke SQL tidak dapat memverifikasi integritas data. LINQ ke SQL akan melemparkan pengecualian yang menunjukkan konflik data meskipun data di sumber data belum benar-benar berubah.

Jika sumber data yang mendasar berisi bidang tanda waktu yang diperbarui secara otomatis selama pembaruan, Anda hanya dapat menyimpan nilai tersebut dalam status tampilan. Dalam hal ini, properti tanda waktu di kelas entitas diatur ke IsVersion=true dan semua properti diatur ke UpdateCheck.Never. Karena bidang tanda waktu secara otomatis diperbarui oleh database setiap kali data dalam rekaman tersebut berubah, LINQ ke SQL menentukan dari nilai tersebut jika data telah berubah. Ini membantu mengurangi ukuran status tampilan, dan tidak ada data sensitif yang terekspos. LINQ ke SQL akan memeriksa konsistensi data dengan membandingkan nilai tanda waktu dalam status tampilan dengan nilai tanda waktu dalam database. Untuk informasi selengkapnya, lihat Panduan: Menggunakan Tanda Waktu dengan Kontrol LinqDataSource untuk Memeriksa Integritas Data.

Berlaku untuk

Lihat juga