如何:缓存数据以便脱机使用或在服务器上使用

更新:2007 年 11 月

适用于

本主题中的信息仅适用于指定的 Visual Studio Tools for Office 项目和 Microsoft Office 版本。

项目类型

  • 文档级项目

Microsoft Office 版本

  • 2007 Microsoft Office system

  • Microsoft Office 2003

有关更多信息,请参见按应用程序和项目类型提供的功能

可以在文档中将某个数据项标记为要进行缓存,以便脱机使用该数据项。这样,当文档存储在服务器中时,其他代码也可以对文档中的相应数据进行操作。

在代码中声明某个数据项时,可以将该数据项标记为要进行缓存;如果正在使用 DataSet,可以在“属性”窗口中设置相应属性来完成这一操作。如果要缓存的数据项不是 DataSetDataTable,请确保该数据项满足在文档中缓存的条件。有关更多信息,请参见缓存数据

7230ebaf.alert_note(zh-cn,VS.90).gif说明:

在缓存中,以下数据集的名称前有一个下划线前缀:使用 Visual Basic 创建的且标记为 Cached 和 WithEvents 的数据集,包括从“数据源”窗口或“工具箱”中拖动的且“CacheInDocument”属性被设置为“True”的数据集。例如,如果创建了一个数据集并将其命名为“Customers”,则在缓存中 CachedDataItem 的名称将是“_Customers”。使用 ServerDocument 访问此缓存项时,必须指定“_Customers”而不是“Customers”。

使用代码在文档中缓存数据

  1. 将数据项的某个公共字段或属性声明为项目中的宿主项类的成员,例如 Word 项目中的 ThisDocument 类或 Excel 项目中的 ThisWorkbook 类。

  2. CachedAttribute 属性应用于成员,以标记要存储到文档的数据缓存中的数据项。下面的示例将此属性应用于 DataSet 的字段声明。

    <Microsoft.VisualStudio.Tools.Applications.Runtime.Cached()> _
    Public employeesDataSet As DataSet
    
    [Microsoft.VisualStudio.Tools.Applications.Runtime.Cached()]
    public DataSet employeesDataSet;
    
  3. 添加代码以创建该数据项的一个实例,并从数据库加载该实例(如果适用)。

    仅在首次创建数据项时加载该数据项,此后,缓存将与文档一同存储,您必须另外编写代码来更新该数据项。

使用“属性”窗口在文档中缓存数据集

  1. 使用 Visual Studio 设计器中的工具将数据集添加到项目中,例如,使用“数据源”窗口将数据源添加到项目中。

  2. 如果还没有数据集的实例,可以创建一个数据集实例,然后在设计器中选择该实例。

  3. 在“属性”窗口中,将“CacheInDocument”属性设置为“True”。

    有关更多信息,请参见 Visual Studio Tools for Office 项目中的属性

  4. 在“属性”窗口中,将“Modifiers”属性设置为“Public”(默认情况下为“Internal”)。

请参见

任务

如何:以编程方式在 Office 文档中缓存数据源

如何:以编程方式停止缓存数据源

如何:在受密码保护的文档中缓存数据

概念

缓存数据

访问服务器上的文档数据

其他资源

保存数据

ADO.NET 中的并发控制