Compartilhar via


Cache de dados

Se aplica a

As informações contidas neste tópico se aplicam apenas às especificado Ferramentas do Visual Studio para o Office projetos e as versões do Microsoft Office.

Tipo de Projeto

  • Projetos de nível de documento

Versão do Microsoft Office

  • Microsoft Office Sistema de 2007

  • Microsoft Office 2003

For more information, see Recursos disponíveis pelo aplicativo e o tipo de projeto.

Você pode armazenar em cache dados objetos em uma personalização de nível de documento para que os dados podem ser acessados offline ou sem Abrindo o Microsoft Office Word ou Microsoft Office Excel.Para armazenar em cache um objeto, o objeto deve ter um tipo de dados que atende a certos requisitos.Muitos tipos de dados ComComumComum no .NET Framework atendem a esses requisitos, incluindo String, DataSete DataTable.

Há duas maneiras para adicionar um objeto para o cache de dados:

Depois de adicionar um objeto para o cache de dados, você pode acessar e modificar os dados armazenados em cache sem iniciar o Word ou Excel.For more information, see Acessando dados em documentos no servidor.

Requisitos para objetos de dados a ser armazenados em cache

Se você quiser instâncias de cache dos tipos de dados que você criar, os tipos de dados devem atender a esses requisitos:

  • Ser um campo público de leitura/Gravar ou propriedade de um item de host, como a ThisDocument ou ThisWorkbook classes.

  • Não ser um indexador ou Outro propriedade com parâmetros.

Além disso, o objeto de dados deve ser serializável pela classe XmlSerializer, que significa que ele deve ter estas características:

  • Ser um tipo público.

  • Tem um construtor público sem parâmetros.

  • Não executar o código que requer privilégios de segurança adicional.

  • Expor apenas propriedades Público de leitura/Gravar (Outro propriedades serão ignoradas).

  • Não expor matrizes multidimensionais (matrizes aninhadas são aceitos).

  • Não retornar interfaces de propriedades e campos.

  • Não implemente IDictionary se uma coleção.

Controlar o comportamento dos objetos em cache

Para obter mais Controlarar sobre o comportamento de um objeto em cache, você pode implementar a interface de ICachedType no tipo de objeto em cache.Por exemplo, você pode implementar essa interface se você quiser controlar como o usuário é notificado quando o objeto tiver sido alterado.Para exemplos de código que demonstram como implementar ICachedType, consulte a classe ControlCollection os aplicativos de exemplo a seguir:

Alterações persistentes para dados em cache em documentos protegida por senha

Em projetos de nível de documento para Word 2007 e Excel 2007, se armazenar em cache objetos de dados em um documento que está protegida com uma senha, alterações nos dados armazenados em cache não são salvas.Iniciando no Visual Studio 2008 Serviço Pack 1 (SP1), você pode salvar as alterações aos dados armazenados em cache, substituindo métodos.Substituir esses métodos para remover temporariamente a proteção quando o documento é salvo e reaplique a proteção após o salvamento operação for Concluir.

For more information, see Como: Dados de cache em um documento protegida por senha.

Impedindo perda de dados ao adicionar valores nulos no cache de dados

Quando você Adicionar objetos para o cache de dados, Tudo objetos em cache devem ser inicializados para um não-null valor antes que o documento seja salvo e Fechada.Se qualquer objeto em cache tiver um valor de null quando o documento é salvo e Fechada, o Tempo de execução Ferramentas do Visual Studio para o Office removerá automaticamente todos os objetos em cache do cache de dados.

Se você adicionar um objeto com um valor de null para o cache de dados usando o atributo de CachedAttribute em tempo de design, você pode usar a classe ServerDocument para inicializar os Objetos dados armazenados em cache antes do documento é aberto.Isso é útil se você deseja inicializar os dados em cache em um servidor sem o Word ou Excel instalado, antes do documento for aberto por um usuário final.For more information, see Acessando dados em documentos no servidor.

Como os dados em cache armazenados no documento

Ao armazenar em cache um objeto de dados em um documento, o Tempo de execução Ferramentas do Visual Studio para o Office serializa o objeto em uma Cadeia de Caracteres XML que é armazenada no documento.A maneira que a cadeia de caracteres de XML é armazenada no documento depende da versão do Microsoft Office sua solução funciona com:

  • Em personalizações para o Microsoft Office 2003, o runtime Ferramentas do Visual Studio para o Office armazena a Cadeia de Caracteres XML no Controlarar de armazenamento do tempo de execução.O Controlarar de armazenamento em tempo de execução é um Controlarar ActiveX que está incorporado no documento.For more information, see Visão geral do Controlarar em tempo de execução armazenamento.

  • Em personalizações para o 2007 Microsoft Office Sistema, o Tempo de execução Ferramentas do Visual Studio para o Office armazena a Cadeia de Caracteres XML em um personalizado XML parte no documento.For more information, see Visão geral de Parts XML Personalizar.

Consulte também

Tarefas

Como: Armazenar em cache dados para uso off-line ou em um servidor

Como: Armazenar em cache programaticamente uma Origem de dados em um documento do Office

Como: Parar programaticamente o cache de uma Origem de dados

Como: Dados de cache em um documento protegida por senha

Demonstra Passo a passo: Criar uma relação mestre/detalhes usando um dataset em cache

Date

History

Motivo

De 2008 de julho

Informações sobre o cache de dados em documentos protegidos por senha Adicionados.

Alteração de recurso do SP1.