Метод IBackupRestore.AddBackupObjects
Добавляет объект IBackupRestore и его дочерние объекты IBackupRestore на указанный объект резервного копирования.
Пространство имен: Microsoft.SharePoint.Administration.Backup
Сборка: Microsoft.SharePoint (в Microsoft.SharePoint.dll)
'Декларация
Sub AddBackupObjects ( _
parent As SPBackupRestoreObject _
)
'Применение
Dim instance As IBackupRestore
Dim parent As SPBackupRestoreObject
instance.AddBackupObjects(parent)
void AddBackupObjects(
SPBackupRestoreObject parent
)
parent
Тип: Microsoft.SharePoint.Administration.Backup.SPBackupRestoreObjectОбъект резервного копирования, в которую добавляются IBackupRestore объекты.
Реализация AddBackupObjects необходимо выполнить следующие действия:
Убедитесь, что объект SPBackupRestoreObject , представляющий настраиваемый компонент контента создается и добавляется к дереву объектов SPBackupRestoreObject , которые будут обрабатываться резервного копирования или восстановления.
Убедитесь, что объект SPBackupRestoreObject для каждого дочернего объекта содержимого, что компонент, который реализует IBackupRestore будет добавлен в дереве.
Укажите имя типа и описания компонента, который может использоваться в пользовательский Интерфейс приложения Центра администрирования или stsadm.exe или пользовательский Интерфейс Командная консоль SharePoint командлета или другое приложение резервного копирования и восстановления.
В приведенном ниже примере показана простая реализация метода AddBackupObjects() . Другие действия может необходимости или нужно добавить в реализации относятся следующие:
Для второго параметра вызовы метода SetParameter() Примите к сведению вызов метода, который использует сведения текущего языка и региональных параметров для возврата локализованные строки.
Если дочерние объекты в некоторых случаях требуется возможность выбора для резервного копирования, восстановления или восстановление с a новое имя, но в других случаях не будет; Рекомендуется использовать итерации на дочерние объекты для настройки свойств CanSelectForBackup, CanSelectForRestoreили CanRenameOnRestore для каждого дочернего объекта. В следующем примере childIBR — это объект класса дочерних и SupportedWebApp — это свойство, которое возвращает ссылку на SPWebApplication , который поддерживается данным объектом. Поскольку невозможно выбрать веб-приложение администрирования для резервного копирования или восстановления отдельно от его родителя, не следует вспомогательных объектов содержимого.
if (childIBR.SupportedWebApp is SPAdministrationWebApplication) { childIBR.CanSelectForBackup == false; childIBR.CanSelectForRestore == false; }
If TypeOf childIBR.SupportedWebApp Is SPAdministrationWebApplication Then childIBR.CanSelectForBackup = False childIBR.CanSelectForRestore = False End If
Если объект класс содержимого в некоторых случаях может быть компонент верхнего уровня (отличного от фермы) в дереве компонентов, которые будут обрабатывать операции резервного копирования или восстановления; но в другое время дочерних некоторые больше (без ферм серверов) настраиваемый компонент, метод AddBackupObjects должен проверить, является ли объект уже добавлен к дереву путем вызова AddBackupObjects родительского объекта. Для этого оболочки для всех логику реализации (после проверки того, является ли родительский пустая ссылка (Nothing в Visual Basic)) в условную структуру, как показано в следующем примере.
if (parent == null) { throw new ArgumentNullException("parent"); } if (parent.FindObject(this.Id) == null) { // TODO: Insert here all of your implementation logic // after the check of the parent's validity. }
If parent Is Nothing Then Throw New ArgumentNullException("parent") End If If parent.FindObject(Me.Id) Is Nothing Then ' TODO: Insert here all of your implementation logic ' after the check of the parent's validity. End If
Ниже приведен пример реализации метода AddBackupObjects() . В этом примере предполагается, что класс содержимого содержит ChildContentCollectionIBackupRestore дочерних объектов. Если у класса имеется более одного типа дочернего компонента, могут иметь отдельные семейства сайтов для каждого типа и выполните итерацию по каждого семейства сайтов.
public void AddBackupObjects(SPBackupRestoreObject parent)
{
if (parent == null)
{
throw new ArgumentNullException("parent");
}
SPBackupRestoreObject self = parent.AddChild(this);
self.Information.SetParameter(SPBackupRestoreObject.SPTypeName, this.GetType());
self.Information.SetParameter(SPBackupRestoreObject.SPDescription, "Description of custom content component");
....foreach (ChildContent child in ChildContentCollection)
{
IBackupRestore childIBR = child as IBackupRestore;
childIBR.AddBackupObjects(self);
}
}
Public Sub AddBackupObjects(ByVal parent As SPBackupRestoreObject)
If parent Is Nothing Then
Throw New ArgumentNullException("parent")
End If
Dim self As SPBackupRestoreObject = parent.AddChild(Me)
self.Information.SetParameter(SPBackupRestoreObject.SPTypeName, Me.GetType())
self.Information.SetParameter(SPBackupRestoreObject.SPDescription, "Description of custom content component")
For Each child As ChildContent In ChildContentCollection
Dim childIBR As IBackupRestore = TryCast(child, IBackupRestore)
childIBR.AddBackupObjects(self)
Next child
End Sub
Пространство имен Microsoft.SharePoint.Administration.Backup