Datos almacenados en caché en las personalizaciones de nivel de documentoCached data in document-level customizations

Un objetivo principal de las personalizaciones de nivel de documento es separar los datos de vista de documentos de Office.A primary goal of document-level customizations is to separate data from view in Office documents. Datos hacen referencia a la información que se almacena en el documento, incluidos números y texto.Data refers to the information that is stored in the document, including numbers and text. La vista hace referencia a la interfaz de usuario y el modelo de objetos de Microsoft Office Word y Microsoft Office Excel.View refers to the user interface and the object model of Microsoft Office Word and Microsoft Office Excel.

Visual Studio separa los datos de la vista en las personalizaciones de nivel de documento habilitando los datos que se incrusta como un isla de datos, también denominado el memoria caché de datos.Visual Studio separates the data from the view in document-level customizations by enabling data to be embedded as a data island, also called the data cache. Puede leer o modificar los datos directamente sin iniciar Word o Excel.You can read or modify the data directly without starting Word or Excel. Esto es útil cuando necesite modificar los datos de documentos en un servidor que no tiene instalado Microsoft Office.This is useful when you need to modify data in documents on a server that does not have Microsoft Office installed. Word y Excel están diseñados para su uso en entornos de cliente; no están diseñados para ejecutarse en un servidor.Word and Excel are intended for use in client environments; they are not designed to be run on a server.

Se aplica a: La información de este tema se aplica al documento-los proyectos de nivel de Excel y Word.Applies to: The information in this topic applies to document-level projects for Excel and Word. Para obtener más información, consulte características disponibles por tipo de aplicación y el proyecto de Office.For more information, see Features available by Office application and project type.

Para obtener más información acerca de las personalizaciones de nivel de documento, consulte información general sobre el desarrollo de soluciones de Office (VSTO) y arquitectura de las personalizaciones de nivel de documento.For more information about document-level customizations, see Office solutions development overview (VSTO) and Architecture of document-level customizations.

Comprender el modelo de programación de datos en cachéUnderstand the cached data programming model

La isla de datos puede contener cualquier objeto de la solución que cumpla determinados requisitos.The data island can contain any object in your solution that meets certain requirements. Estos objetos incluyen DataSet objetos, DataTable objetos y cualquier otro objeto que se puede serializar el XmlSerializer clase.These objects include DataSet objects, DataTable objects, and any other object that can be serialized by the XmlSerializer class. Para obtener más información, consulte almacenar en caché datos.For more information, see Cache data.

Para proporcionar la vista de los datos en caché, puede enlazar controles de formularios Windows Forms y controles host en el documento a los objetos de la isla de datos.To provide the view for the cached data, you can bind Windows Forms controls and host controls on the document to objects in the data island. Enlace de datos entre la isla de datos y los controles enlazados a datos mantiene a ambos sincronizados.Data binding between the data island and the data-bound controls keeps the two synchronized. También puede agregar código de validación a los datos que son independientes de los controles.You can also add validation code to the data that is independent of the controls. Para obtener más información, consulte enlazar datos a controles en soluciones de Office.For more information, see Bind data to controls in Office solutions.

Los controles host son versiones extendidos de objetos nativos en los modelos de objetos de Excel y Word.Host controls are extended versions of native objects in the Excel and Word object models. A diferencia de los objetos nativos, los controles host se pueden enlazar directamente a objetos de datos administrados.Unlike the native objects, host controls can be bound directly to managed data objects. Para obtener más información, consulte elementos Host y hospedar información general sobre controles y Windows Forms a los controles de información general sobre documentos de Office.For more information, see Host items and host controls overview and Windows Forms controls on Office documents overview.

Acceso a los datos en el servidor en cachéAccess cached data on the server

Para obtener acceso a datos almacenados en caché en un documento, puede usar el ServerDocument clase.To access cached data in a document, you can use the ServerDocument class. Esta clase forma parte de la Runtime de Microsoft Visual Studio Tools para OfficeVisual Studio Tools for Office runtime, y se puede usar en un servidor sin ejecutar Excel o Word.This class is part of the Runtime de Microsoft Visual Studio Tools para OfficeVisual Studio Tools for Office runtime, and it can be used on a server without running Excel or Word. Cuando el usuario abre el documento después de modificar los datos en caché, todos los controles que están enlazados a los datos se sincronizan automáticamente con los cambios y se presenta al usuario con los datos actualizados.When the user opens the document after you modify the cached data, any controls that are bound to the data are automatically synchronized to the changes, and the user is presented with the updated data. Para obtener más información, consulte tener acceso a datos de documentos en el servidor.For more information, see Access data in documents on the server.

Excel y Word no son necesarios para escribir en los datos en el servidor, sólo para verlo en el cliente.Excel and Word are not needed to write to the data on the server, only to view it on the client. Excel y Word no incluso deben instalarse en el servidor.Excel and Word do not even need to be installed on the server. Esto proporciona una mejor escalabilidad y la capacidad para realizar el rápido procesamiento por lotes de documentos que contienen las Islas de datos.This provides improved scalability and the ability to perform fast batch processing of documents that contain data islands.

Almacenamiento en caché para su uso sin conexión de datosData caching for offline use

Almacenar datos en la isla de datos permite escenarios sin conexión.Storing data in the data island enables offline scenarios. Cuando un usuario en primer lugar abre un documento o solicita el documento del servidor, la isla de datos se rellena con los datos más recientes.When a user first opens a document or requests the document from the server, the data island is filled with the most recent data. La isla de datos se almacena en caché en el documento y, a continuación, está disponible sin conexión.The data island is cached in the document and is then available offline. El usuario (y el código) pueden manipular los datos, aunque no está disponible ninguna conexión activa.The user (and your code) can manipulate the data, even though no live connection is available. Cuando el usuario vuelve a conectar, se pueden propagar los cambios a los datos en un origen de datos del servidor.When the user reconnects, the changes to the data can be propagated back to a server data source.

Datos almacenados en caché y en comparación con los elementos XML personalizadosCached data and custom XML parts compared

Elementos XML personalizados se introdujeron en 2007 Microsoft Office system como una forma de almacenar fragmentos arbitrarios de XML en un documento.Custom XML parts were introduced in the 2007 Microsoft Office system as a way to store arbitrary pieces of XML in a document. Aunque los elementos XML personalizados son útiles en muchos de los mismos escenarios que la caché de datos, hay algunas diferencias entre la isla de datos y elementos XML personalizados.Although custom XML parts are useful in many of the same scenarios as the data cache, there are some differences between the data island and custom XML parts. Para obtener más información acerca de los elementos XML personalizados, vea información general de elementos XML personalizados.For more information about custom XML parts, see Custom XML parts overview.

En la tabla siguiente se enumera algunas de las diferencias y similitudes.The following table lists some of the differences and similarities.

Caché de datosData cache Elementos XML personalizadosCustom XML parts
¿Las aplicaciones de Office pueden usarlas?Which Office applications can use these? Personalizaciones de nivel de documento para las siguientes aplicaciones:Document-level customizations for the following applications:

- Excel- Excel
- Word- Word
Soluciones de nivel de documento y el nivel de aplicación para las siguientes aplicaciones:Document-level and application-level solutions for the following applications:

- Excel- Excel
- PowerPoint- PowerPoint
- Word- Word
¿Qué tipos de datos puede almacenar?What types of data can you store? Cualquier objeto público en el ensamblado de personalización que cumple determinados requisitos.Any public object in your customization assembly that meets certain requirements. Para obtener más información, consulte almacenar en caché datos.For more information, see Cache data. Los datos XML.Any XML data.
¿Puede obtener acceso a los datos sin iniciar aplicaciones de Microsoft Office?Can you access the data without starting Microsoft Office applications? Sí, mediante el uso de la ServerDocument clase proporcionada por el Runtime de Microsoft Visual Studio Tools para OfficeVisual Studio Tools for Office runtime.Yes, by using the ServerDocument class provided by the Runtime de Microsoft Visual Studio Tools para OfficeVisual Studio Tools for Office runtime. Sí, mediante las clases en el System.IO.Packaging espacio de nombres, o mediante el SDK de formato XML abierto.Yes, by using classes in the System.IO.Packaging namespace, or by using the Open XML Format SDK.

Vea tambiénSee also