Compartilhar via


SPBackupRestoreInformation.GenerateFileMapping method

Gera um nome exclusivo para o arquivo de backup que contém o arquivo de origem especificado.

Namespace:  Microsoft.SharePoint.Administration.Backup
Assembly:  Microsoft.SharePoint (in Microsoft.SharePoint.dll)

Syntax

'Declaração
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 retornado

Type: System.String
Um String que representa o nome do arquivo de backup que contém a cópia do name.

Comentários

Este método é útil quando uma operação de backup contém vários arquivos com o mesmo nome. Para garantir que cada uma separadamente é feita backup em vez de substituir uns aos outros, este método pode ser usado para gerar um nome exclusivo para cada um. Normalmente, ela é chamada em implementações do OnBackup(). Veja o exemplo abaixo.

O formato do valor de retorno é hex. bak, onde hex é um número hexadecimal de oito dígitos; Por exemplo, "00000001.bak" ou 0000000A.bak".

O parâmetro name também torna-se uma chave em uma loja de pares chave-valor, e a seqüência de caracteres retornada por GenerateFileMapping torna-se o valor da chave. Esse par é armazenado no arquivo spbackup.xml na pasta Location .

Dica

Embora GenerateFileMapping e ReverseFileMapping retornam exatamente o mesmo valor em resposta a mesma entrada, eles estão fazendo coisas diferentes internamente. GenerateFileMapping cria o nome de arquivo exclusivo e grava o par mapeado de nomes de arquivo para o arquivo spbackup.xml . ReverseFileMapping  o mapeamento do arquivo.

Examples

O exemplo a seguir mostra o método GenerateFileMapping usado em uma implementação de OnBackup(). Para o exemplo completo, consulte 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

Ver também

Referência

SPBackupRestoreInformation class

SPBackupRestoreInformation members

Microsoft.SharePoint.Administration.Backup namespace

ReverseFileMapping