Interfaz IBackupRestore

Permite que el contenido que una clase representa para realizar copias de seguridad y restaura.

Espacio de nombres:  Microsoft.SharePoint.Administration.Backup
Ensamblado:  Microsoft.SharePoint (en Microsoft.SharePoint.dll)

Sintaxis

'Declaración
<SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel := True)> _
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel := True)> _
Public Interface IBackupRestore
'Uso
Dim instance As IBackupRestore
[SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel = true)]
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
public interface IBackupRestore

Comentarios

Mediante la implementación de esta interfaz de un objeto que representa la parte del contenido en una implementación de SharePoint Foundation se convierte en algo que puede ser el backup y restore.

El código no llama directamente a los miembros de IBackupRestore . Una vez implementada, el código construir objetos de las clases personalizadas IBackupRestore y agregarlos a la base de datos de configuración con el método Update() . Copia de seguridad y aplicaciones de restauración, como la aplicación de Administración Central de SharePoint Foundation , la aplicación de consola de stsadm.exe y un cmdlet Shell de administración de SharePoint realiza llamadas internas a los miembros de los objetos IBackupRestore cuando se realiza copia de seguridad y restaurar. Para obtener más información acerca de cómo utilizar los objetos IBackupRestore , vea How to: Create a Content Class That Can be Backed Up and Restored.

Puede crear tantos tipos de clases de IBackupRestore que desea y, si lo desea, se pueden anidar como un árbol de clases de componentes. Pero la clase más alta en cualquier tales árbol debe derivarse (directa o indirectamente) de la clase SPPersistedObject y debe ser un elemento secundario de SPFarm. Si la clase de contenido no es un elemento secundario de cualquier otra clase contenido personalizado, se debe derivar (directa o indirectamente) de objeto SPPersistedObject y debe ser un elemento secundario de SPFarm.

Si la clase deriva de una clase que implemente la interfaz IBackupRestore y desea reemplazar una implementación heredada de un miembro de IBackupRestore , la declaración de clase debe hacer referencia explícita IBackupRestore similar al siguiente:

public class MyClass : SPPersistedObject, IBackupRestore
Public Class [MyClass]
    Inherits SPPersistedObject
    Implements IBackupRestore
End Class

La "invalidación" de cualquier miembro de IBackupRestore debe incluir explícitamente "IBackupRestore" en el nombre del miembro y no debe incluir la palabra clave public. A continuación se muestra un ejemplo:

String IBackupRestore.Name { ... }
Private Property Name() As String Implements IBackupRestore.Name
... 
End Property

Como alternativa, si la implementación del miembro en la clase principal utilizó las palabras clave virtual o override, puede utilizar la palabra clave override en la implementación de este modo:

public override String Name { ... }
Public Overrides Property Name() As String
... 
End Property

Hacer no ocultar la implementación del miembro heredado a declarar el miembro con o sin la palabra clave de new ([new] public String Name { ... }).

Si la clase se deriva de SPPersistedObject, la declaración de campos que se va a conservar en la base de datos de configuración debe ir precedida con el atributo [Persisted] . Sin embargo, sólo puede marcar los siguientes tipos de campos de este modo: tipos primitivos como cadenas, enteros y GUID; otros objetos de SPPersistedObject o SPAutoserializingObject ; o colecciones de cualquiera de las anteriores. Por ejemplo, la clase no puede tener un campo de FileInfo marcado con el atributo [Persisted] . Si los datos que desea conservar no están de una clase puede persistir, use un sustituto con persistencia. La implementación de ejemplo en el tema de referencia para la propiedad DiskSizeRequired visualiza una clase que mantiene una colección de nombres de archivo y los utiliza para crear una colección de objetos de FileInfo temporal en tiempo de ejecución.

Si la clase puede tener varios elementos secundarios del mismo tipo, cree una propiedad o un campo de un tipo de colección u otro tipo enumerable para almacenar una colección de todos los elementos secundarios de un tipo determinado. Esto es especialmente importante si el propio tipo secundarios implementa IBackupRestore, debido a que la implementación del método AddBackupObjects() debe recorrer en iteración dichos elementos secundarios y llame al método AddBackupObjects() de cada elemento secundario.

Básicamente, hay una asignación uno a uno entre los objetos de tipo SPBackupRestoreInformation y los objetos de tipo IBackupRestore. Cada uno proporciona una parte de la información necesaria para procesar una copia de seguridad o restauración de un tipo determinado de componente de contenido. Los objetos de estos dos tipos se hace referencia, respectivamente, en las propiedades Information y IBackupRestore de un objeto SPBackupRestoreObject . La clase de este última, además de actuar como un contenedor para los objetos de IBackupRestore y el correlacionadas SPBackupRestoreInformation proporciona funciones auxiliares para objetos de SPBackupRestoreConsoleObject .

Nota

Si la clase de componente representa valores de configuración de ámbito de toda la granja de servidores o de servicio de Web de publicación de contenido, a diferencia de contenido, también debe implementar IBackupRestoreConfiguration que incluye IBackupRestore.

Vea también

Referencia

Miembros IBackupRestore

Espacio de nombres Microsoft.SharePoint.Administration.Backup