缓存数据以供脱机使用或在服务器上使用

可以在文档中标记要缓存的数据项,以便它可以脱机使用。 这也使得当文档存储在服务器上时,文档中的数据可以被其他代码操作。

适用于:本主题中的信息适用于 Excel 和 Word 的文档级项目。 有关详细信息,请参阅按 Office 应用程序和项目类型提供的功能

可以在代码中声明数据项时标记要缓存的数据项;或者,如果使用的是 DataSet,则可以在属性窗口中设置属性。 如果缓存的数据项不是 DataSetDataTable,请确保它符合在文档中缓存的条件。 有关详细信息,请参阅缓存数据

注意

使用 Visual Basic 创建的标记为 CachedWithEvents 的数据集(包括从数据源窗口或工具箱拖动的数据集,其 CacheInDocument 属性设置为 True)在缓存中的名称前加下划线。 例如,如果创建数据集并将其命名为 Customers,则缓存中的 CachedDataItem 名称将为 _Customers。 当使用 ServerDocument 访问此缓存项时,必须指定 _Customers 而不是 Customers

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

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

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

    [Microsoft.VisualStudio.Tools.Applications.Runtime.Cached()]
    public DataSet employeesDataSet;
    
  3. 添加代码以创建数据项的实例,并在适用的情况下从数据库加载它。

    数据项仅在首次创建时加载;此后,缓存将保留在文档中,必须编写其他代码来更新它。

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

  1. 通过使用 Visual Studio 设计器中的工具向项目添加数据集,例如,使用数据源窗口向项目添加数据源。

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

  3. 属性窗口中,将 CacheInDocument 属性设置为 True

    有关详细信息,请参阅 Office 项目中的属性

  4. 属性窗口中,将修饰符属性设置为公用(默认情况下为内部)。