다음을 통해 공유


오프라인이나 서버에서 사용할 데이터 캐시

오프라인에서 사용할 수 있도록 문서에 캐시할 데이터 항목을 표시할 수 있습니다. 이렇게 하면 문서가 서버에 저장될 때 문서의 데이터를 다른 코드에서 조작할 수도 있습니다.

적용 대상: 이 항목의 정보는 Excel 및 Word의 문서 수준 프로젝트에 적용됩니다. 자세한 내용은 Office 애플리케이션 및 프로젝트 형식에 따라 사용 가능한 기능을 참조하세요.

코드에서 데이터 항목이 선언될 때 또는 DataSet을 사용 중인 경우 속성 창에서 속성을 설정하여 캐시할 데이터 항목을 표시할 수 있습니다. DataSet 또는 DataTable이 아닌 데이터 항목을 캐시하는 경우 문서에 캐시되는 조건을 충족하는지 확인합니다. 자세한 내용은 캐시 데이터를 참조하세요.

참고 항목

CachedWithEvents로 표시된 Visual Basic을 사용하여 만든 데이터 세트(데이터 원본 창에서 끌어 온 데이터 세트 또는 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. 속성 창에서 Modifiers 속성을 Public(기본적으로 Internal)으로 설정합니다.