Udostępnij za pośrednictwem


SqlDataSource.CacheKeyDependency Właściwość

Definicja

Pobiera lub ustawia zależność klucza zdefiniowanego przez użytkownika, która jest połączona ze wszystkimi obiektami pamięci podręcznej danych utworzonymi przez kontrolę źródła danych. Wszystkie obiekty pamięci podręcznej wygasły jawnie po wygaśnięciu klucza.

public:
 virtual property System::String ^ CacheKeyDependency { System::String ^ get(); void set(System::String ^ value); };
public virtual string CacheKeyDependency { get; set; }
member this.CacheKeyDependency : string with get, set
Public Overridable Property CacheKeyDependency As String

Wartość właściwości

Klucz identyfikujący wszystkie obiekty pamięci podręcznej utworzone przez obiekt SqlDataSource.

Uwagi

Kontrolka SqlDataSource obsługuje buforowanie danych. Gdy dane są buforowane, metoda pobiera dane z pamięci podręcznej, Select a nie z bazowej bazy danych. Gdy pamięć podręczna Select wygaśnie, metoda pobiera dane z bazowej bazy danych, a następnie ponownie buforuje dane.

Właściwość można ustawić CacheKeyDependency tak, aby utworzyć zależność między wszystkimi wpisami pamięci podręcznej utworzonymi przez kontrolkę SqlDataSource i kluczem. Można programowo wygasnąć wszystkie wpisy pamięci podręcznej w dowolnym momencie, wygasając klucz.

Kontrolka SqlDataSource może buforować dane tylko wtedy, gdy jest w trybie DataSet . Wyjątek NotSupportedException jest zgłaszany przez metodę Select , jeśli kontrolka SqlDataSource jest ustawiona na DataReader wartość i buforowanie jest również włączone.

Unikatowy wpis pamięci podręcznej jest tworzony dla każdej kombinacji SelectCommandwłaściwości , ConnectionStringi SelectParameters . Wiele SqlDataSource kontrolek może używać tych samych wpisów pamięci podręcznej w scenariuszach, w których kontrolki ładują te same dane z tej samej bazowej bazy danych.

Ważne

W przypadku korzystania z personifikacji klienta w ramach uwierzytelniania systemu Microsoft Windows dane są buforowane, gdy pierwszy użytkownik uzyskuje dostęp do danych. Jeśli inny użytkownik zażąda tych samych danych, dane są pobierane z pamięci podręcznej. Dane nie są pobierane przez wykonanie innego wywołania bazy danych w celu zweryfikowania dostępu użytkownika do danych. Jeśli oczekujesz, że więcej niż jeden użytkownik będzie uzyskiwał dostęp do danych i chcesz, aby każde pobieranie danych było weryfikowane przez konfiguracje zabezpieczeń bazy danych, nie używaj buforowania.

Dotyczy

Zobacz też