Поделиться через


Класс SPBackupRestoreObject

Содержит вспомогательные функции для операций резервного копирования и восстановления и служит контейнером для объекта SPBackupRestoreInformation и его соответствующих IBackupRestore объекта.

Иерархия наследования

System.Object
  Microsoft.SharePoint.Administration.Backup.SPBackupRestoreObject

Пространство имен:  Microsoft.SharePoint.Administration.Backup
Сборка:  Microsoft.SharePoint (в Microsoft.SharePoint.dll)

Синтаксис

'Декларация
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel := True)> _
<SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel := True)> _
Public NotInheritable Class SPBackupRestoreObject
'Применение
Dim instance As SPBackupRestoreObject
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
[SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel = true)]
public sealed class SPBackupRestoreObject

Замечания

Так как он имеет свойство IBackupRestore , которое возвращает объект IBackupRestore , объект SPBackupRestoreObject может рассматриваться как представление компонента контента типа, резервного копирования или восстановления.

объекты SPBackupRestoreObject могут быть вложенными. Для получения дополнительных сведений см свойства Parent и Children . Как правило дерево объектов SPBackupRestoreObject будет зеркально дерево компонентов содержимого, таких как фермы, веб-службы, веб-приложения и базы данных контента. Тем не менее метод Reparent позволяет создавать деревья для резервного копирования и восстановления операции, которые не полностью зеркально любой части вашего развертывания дерева компонентов.

Этот класс не имеет открытого конструктора. Получите ссылку на объект SPBackupRestoreObject с методом, который возвращает объектов этого класса; к примеру GetRootили использовать индексатор для получения ссылки на определенный члена объекта SPBackupRestoreObjectCollection .

Этот класс содержит несколько констант, используемых для получения сведений из объекта в свойстве Information .

Объект SPBackupRestoreObject сохраняется как элемент <SPBackupObject> в spbackup.xml или sprestore.xml , которая сохраняется во вложенной папке резервного копирования расположении, указанном в свойстве Location объекта в свойстве Information .

Примеры

В следующем примере показан класс SPBackupRestoreObject , используемых в метод, который будет убедитесь, что имя компонента отправленных пользователем, уникальным образом идентифицирующее один компонент в верхней части дерева компонентов, которые будут обрабатываться резервного копирования или восстановления. Полный пример и подробное обсуждение в разделе How to: Programmatically Back Up Content.

private static SPBackupRestoreObject EnsureUniqueValidComponentName(SPBackupRestoreSettings settings, ref Guid operationGUID)
{
    SPBackupRestoreObjectCollection list = SPBackupRestoreConsole.FindItems(operationGUID, settings.IndividualItem);
    SPBackupRestoreObject component = null;

    if (list.Count <= 0)
    {
        Console.WriteLine("There is no component with that name. Run again with a new name.");
        Console.WriteLine("Press Enter to continue.");
        Console.ReadLine();
    }
    else if (list.Count > 1)  // The component name specified is ambiguous. Prompt user to be more specific.
    {
        Console.WriteLine("More than one component matches the name you entered.");
        Console.WriteLine("Run again with one of the following:");
        for (int i = 0; i < list.Count; i++)
        {
            Console.WriteLine("\t{0}", list[i].ToString());
        }
        Console.WriteLine("Press Enter to continue.");
        Console.ReadLine();
    }
    else
    {
        component = list[0];
    }

    return component;

}// end EnsureUniqueValidComponentName
Private Shared Function EnsureUniqueValidComponentName(ByVal settings As SPBackupRestoreSettings, ByRef operationGUID As Guid) As SPBackupRestoreObject
    Dim list As SPBackupRestoreObjectCollection = SPBackupRestoreConsole.FindItems(operationGUID, settings.IndividualItem)
    Dim component As SPBackupRestoreObject = Nothing

    If list.Count <= 0 Then
        Console.WriteLine("There is no component with that name. Run again with a new name.")
        Console.WriteLine("Press Enter to continue.")
        Console.ReadLine()
    ElseIf list.Count > 1 Then ' The component name specified is ambiguous. Prompt user to be more specific.
        Console.WriteLine("More than one component matches the name you entered.")
        Console.WriteLine("Run again with one of the following:")
        For i As Integer = 0 To list.Count - 1
            Console.WriteLine(vbTab & "{0}", list(i).ToString())
        Next i
        Console.WriteLine("Press Enter to continue.")
        Console.ReadLine()
    Else
        component = list(0)
    End If

    Return component

End Function ' end EnsureUniqueValidComponentName

Ниже приведен пример элемента <SPBackupObject> в файле sprestore.xml . Компонент, представленного элементом является SharePoint Foundation веб-приложения с именем "SharePoint - 80".

<SPBackupObject Name="SharePoint - 80">
    <SPBackupRestoreClass>Microsoft.SharePoint.Administration.SPWebApplication, Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c</SPBackupRestoreClass>
    <SPBackupSelectable>True</SPBackupSelectable>
    <SPRestoreSelectable>True</SPRestoreSelectable>
    <SPName>SharePoint - 80</SPName>
    <SPId>6abb0dec-eeab-42d2-8996-af63b8a3ef60</SPId>
    <SPCanBackup>True</SPCanBackup>
    <SPCanRestore>True</SPCanRestore>
    <SPCurrentProgress>100</SPCurrentProgress>
    <SPLastUpdate>04/27/2009 12:34:56</SPLastUpdate>
    <SPCurrentPhase>Done</SPCurrentPhase>
    <SPParameters>
        <SPParameter Key="6abb0dec-eeab-42d2-8996-af63b8a3ef60STATE.xml"><![CDATA[00000003.bak]]></SPParameter>
        <SPParameter Key="ApplicationPoolId"><![CDATA[SharePoint Content Application Pool]]></SPParameter>
        <SPParameter Key="Features.xml"><![CDATA[0000001B.bak]]></SPParameter>
        <SPParameter Key="IdentityType"><![CDATA[SpecificUser]]></SPParameter>
        <SPParameter Key="OutboundMailServer"><![CDATA[smtp.example.com]]></SPParameter>
        <SPParameter Key="SPDescription"><![CDATA[Content and configuration data for this Web application.]]></SPParameter>
        <SPParameter Key="SPName" InputDescription="New web application name:"><![CDATA[SharePoint - 80]]></SPParameter>
        <SPParameter Key="SPServer" InputDescription="New web application URL:" ForceLtr="true"><![CDATA[http://sharepoint.example.com/]]></SPParameter>
        <SPParameter Key="SPUserName"><![CDATA[DOMAIN\username]]></SPParameter>
        <SPParameter Key="WebApplicationId"><![CDATA[67bf6cdb-8fc9-457f-9764-6a8bbf07769e]]></SPParameter>
    </SPParameters>
</SPBackupObject>

Потокобезопасность

Любые общедоступные элементы static (Shared в Visual Basic) этого типа являются потокобезопасными. Не гарантируется, что любые элементы экземпляров потокобезопасны.

См. также

Справочные материалы

Элементы SPBackupRestoreObject

Пространство имен Microsoft.SharePoint.Administration.Backup