Compartir a través de


del método SPBackupRestoreInformation.GenerateFileMapping

Genera un nombre único para el archivo de copia de seguridad que contiene el archivo de origen especificado.

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

Sintaxis

'Declaración
Public Function GenerateFileMapping ( _
    name As String _
) As String
'Uso
Dim instance As SPBackupRestoreInformation
Dim name As String
Dim returnValue As String

returnValue = instance.GenerateFileMapping(name)
public string GenerateFileMapping(
    string name
)

Parámetros

Valor devuelto

Tipo: System.String
String que representa el nombre del archivo de copia de seguridad que contiene la copia de seguridad copia de seguridad de name.

Comentarios

Este método es útil cuando una operación de copia de seguridad contiene varios archivos con el mismo nombre. Para asegurarse de que cada uno de ellos se por separado hace una copia en lugar de sobrescribir entre sí, este método puede usarse para generar un nombre único para cada uno. Normalmente se llama en las implementaciones de OnBackup(). Consulte el ejemplo siguiente.

El formato del valor devuelto es hex.bak, donde hex es un número hexadecimal de ocho dígitos; Por ejemplo, "00000001.bak" o 0000000A.bak".

El parámetro name también se convierte en una clave en un almacén de pares de clave y valor y, a continuación, la cadena devuelta por GenerateFileMapping se convierte en el valor de la clave. Este par se almacena en el archivo spbackup.xml en la carpeta Location .

Nota

Si bien GenerateFileMapping y ReverseFileMapping devuelven exactamente el mismo valor en respuesta a la misma entrada, que hacen cosas diferentes internamente. GenerateFileMapping crea el nombre de archivo único y escribe el par de nombres de archivo asignado en el archivo spbackup.xml . ReverseFileMapping lee la asignación en ese archivo.

Ejemplos

En el ejemplo siguiente se muestra el método GenerateFileMapping que se usa en una implementación de OnBackup(). Para obtener el ejemplo completo, vea How to: Create a Content Class That Can Be Backed Up and Restored.

public Boolean OnBackup(Object sender, SPBackupInformation args)
{
    if (args == null)
    {
    throw new ArgumentNullException("args");
    }

    Boolean successSignal = true;

    foreach (String path in FrontEndFilePaths)
    {
        FileInfo file = new FileInfo(path);
        try
        {
            String mappedFileName = args.GenerateFileMapping(file.Name);
            file.CopyTo(args.Location + @"\" + mappedFileName, true);
            args.Log(SPBackupRestoreLogSeverity.Verbose, "Backed up " + file.Name + " (in " + mappedFileName + ")");
        }
        catch (Exception e)
        {
            args.Log(SPBackupRestoreLogSeverity.Verbose, file.Name + " not backed up: " + e.Message);
            successSignal = false;
        }
    }

    args.CurrentProgress = 50;
    return successSignal;
}
Public Function OnBackup(ByVal sender As Object, ByVal args As SPBackupInformation) As Boolean
    If args Is Nothing Then
    Throw New ArgumentNullException("args")
    End If

    Dim successSignal As Boolean = True

    For Each path As String In FrontEndFilePaths
        Dim file As New FileInfo(path)
        Try
            Dim mappedFileName As String = args.GenerateFileMapping(file.Name)
            file.CopyTo(args.Location & "\" & mappedFileName, True)
            args.Log(SPBackupRestoreLogSeverity.Verbose, "Backed up " & file.Name & " (in " & mappedFileName & ")")
        Catch e As Exception
            args.Log(SPBackupRestoreLogSeverity.Verbose, file.Name & " not backed up: " & e.Message)
            successSignal = False
        End Try
    Next path

    args.CurrentProgress = 50
    Return successSignal
End Function

Vea también

Referencia

clase SPBackupRestoreInformation

Miembros SPBackupRestoreInformation

Espacio de nombres Microsoft.SharePoint.Administration.Backup

ReverseFileMapping