Buforowanie danych
Tak, że dane są dostępne w trybie offline lub bez otwierania programu Microsoft Office Word lub Microsoft Office Excel można buforować dane obiektów w dostosowania poziomu dokumentu.W pamięci podręcznej obiektu, obiekt musi mieć typ danych, który spełnia określone wymagania.Wiele typowych typów danych w.NET Framework tych wymagań, łącznie z String, DataSet, i DataTable.
Zastosowanie: Informacje przedstawione w tym temacie mają zastosowanie do projektów na poziomie dokumentu dla następujących aplikacji: Excel 2013 i Excel 2010; Word 2013 i Word 2010. Aby uzyskać więcej informacji, zobacz Funkcje dostępne w aplikacjach pakietu Office i typ projektu.
Aby dodać obiekt do pamięci podręcznej danych na dwa sposoby:
Aby dodać obiekt do pamięci podręcznej danych, gdy roztwór jest zbudowany, stosować CachedAttribute atrybut deklarację obiektu.Aby uzyskać więcej informacji, zobacz Porady: dane z pamięci podręcznej do użycia w trybie offline lub na serwerze.
Aby programowo dodania obiektu w pamięci podręcznej danych w czasie wykonywania, należy użyć StartCaching metoda hosta do pozycji, takich jak ThisDocument lub ThisWorkbook klas.Aby uzyskać więcej informacji, zobacz Porady: programowane buforowanie źródła danych w dokumencie programu Word.
Po dodaniu obiektu w pamięci podręcznej danych można uzyskać dostęp i modyfikować buforowane dane bez uruchamiania programu Word lub Excel.Aby uzyskać więcej informacji, zobacz Uzyskiwanie dostępu do danych w dokumentach na serwerze.
Wymagania dla danych obiektów w pamięci podręcznej
W pamięci podręcznej obiektu danych w rozwiązaniu, obiekt musi spełniać następujące wymagania:
Być odczytu i zapisu publiczne pola lub właściwości elementu hosta, takich jak ThisDocument lub ThisWorkbook klas.
Nie jest indeksowanie lub innych właściwości sparametryzowanej.
Ponadto obiekt danych musi być możliwy do serializacji przez XmlSerializer klasy, co oznacza typ obiektu musi mieć następujące cechy:
Być typem publicznym.
Mieć publicznego konstruktora bez parametrów.
Nie można wykonać kod, który wymaga dodatkowych uprawnień.
Wystawiać tylko odczyt i zapis właściwości publiczne (inne właściwości zostanie zignorowana).
Nie wystawiać Wielowymiarowe tablice (tablice zagnieżdżone są akceptowane).
Zwraca interfejsów z pól i właściwości.
Implementuje IDictionary Jeśli kolekcja.
Podczas buforowania danych obiekt Visual Studio Tools for Office Runtime serializes obiektu w ciąg XML, który jest przechowywany w niestandardowa część kodu XML w dokumencie.Aby uzyskać więcej informacji, zobacz Niestandardowe części XML ― Omówienie.
Limity rozmiaru danych pamięci podręcznej
Istnieją pewne ograniczenia na całkowitą ilość danych, które można dodać do pamięci podręcznej danych w dokumencie, a rozmiar dowolnego pojedynczego obiektu w pamięci podręcznej danych.Po przekroczeniu tych limitów, aplikacja może nieoczekiwanie zamykany po dane są zapisywane w pamięci podręcznej danych.
Aby uniknąć tych ograniczeń, należy przestrzegać następujących zasad:
Nie należy dodawać żadnych obiekt jest większy niż 10 MB pamięci podręcznej danych.
Nie należy dodawać więcej niż 100 MB danych, całkowita pamięć podręczna danych w pojedynczym dokumencie.
Są wartościami przybliżonymi.Ograniczenia zależą od kilku czynników, w tym ilość dostępnej pamięci RAM i liczba uruchomionych procesów.
Kontrolowanie zachowania w pamięci podręcznej obiektów
Aby uzyskać większą kontrolę nad zachowaniem obiektu w pamięci podręcznej, można zaimplementować ICachedType interfejs typu obiektu w pamięci podręcznej.Można na przykład implementuje ten interfejs, jeśli chcesz kontrolować, jak użytkownik jest powiadamiany, gdy obiekt zostanie zmieniona.Przykłady kodu, które przedstawiają sposób realizacji ICachedType, zobacz ControlCollection klasy dynamicznej próbki formantów programu Excel i Word dynamicznej kontroli próbki w Office Development ― Przykłady i wskazówki.
Utrzymujących się zmian do buforowanych danych z dokumentów chronionych hasłem
Jeśli Ci pamięci podręcznej obiektów danych w dokumencie, który jest chroniony hasłem, zmiany w pamięci podręcznej danych nie są zapisywane.Zmiany można zapisać do buforowanych danych przez zastąpienie dwóch metod.Zastąpić tych metod, aby tymczasowo usunąć ochronę, gdy dokument zostanie zapisany i następnie ponownie zastosować ochronę po zakończeniu operacji.
Aby uzyskać więcej informacji, zobacz Porady: dane z pamięci podręcznej w dokumentach zabezpieczonych hasłem.
Zapobieganie utracie danych podczas dodawania wartości Null do pamięci podręcznej danych
Podczas dodawania obiektów do pamięci podręcznej danych, wszystkie obiekty pamięci podręcznej musi być inicjowane non-null wartość przed dokument jest zapisany i zamknięty.Jeśli dowolnego obiektu w pamięci podręcznej ma null wartość, gdy dokument jest zapisany i zamknięty, Visual Studio Tools for Office Runtime automatycznie usunie wszystkie buforowane obiekty z pamięci podręcznej danych.
Jeśli dodajesz obiekt z null wartości w pamięci podręcznej danych za pomocą CachedAttribute atrybut w czasie projektowania, można użyć ServerDocument klasy zainicjować buforowane dane obiektów przed otwarciem dokumentu.Jest to przydatne, jeśli chcesz zainicjować dane buforowany na serwerze bez programu Word lub Excel zainstalowane przed otwarciem dokumentu przez użytkownika końcowego.Aby uzyskać więcej informacji, zobacz Uzyskiwanie dostępu do danych w dokumentach na serwerze.
Zobacz też
Zadania
Porady: dane z pamięci podręcznej do użycia w trybie offline lub na serwerze
Porady: programowane buforowanie źródła danych w dokumencie programu Word
Porady: dane z pamięci podręcznej w dokumentach zabezpieczonych hasłem
Wskazówki: tworzenie relacji wzorzec/szczegół z użyciem zestawu danych z pamięci podręcznej