IDatabaseSnapshotRestore.OnPreRestore-Methode
Vorbereitung für die Wiederherstellung einer Datenbank (SPDatabase -Objekt) von einem der Momentaufnahmen Verarbeitung enthält.
Namespace: Microsoft.SharePoint.Administration.Backup
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Syntax
'Declaration
Sub OnPreRestore ( _
args As SPDatabaseSnapshotRestoreEvent _
)
'Usage
Dim instance As IDatabaseSnapshotRestore
Dim args As SPDatabaseSnapshotRestoreEvent
instance.OnPreRestore(args)
void OnPreRestore(
SPDatabaseSnapshotRestoreEvent args
)
Parameter
args
Typ: Microsoft.SharePoint.Administration.Backup.SPDatabaseSnapshotRestoreEventEin Objekt, das einen Verweis auf die Momentaufnahme enthält, von denen die Datenbank wiederhergestellt wird.
Hinweise
Implementieren Sie diese Methode, um benutzerdefinierte Logik bereitzustellen, der ausgeführt wird, bevor Sie eine Datenbank aus einer Momentaufnahme wiederhergestellt wird. Erwägen Sie die Implementierung, um dem Benutzer eine Möglichkeit zum Abbrechen der Wiederherstellung.
Wichtig
Ihre Implementierung muss eine Ausnahme ausgelöst, wenn alle erforderlichen Voraussetzung für die Wiederherstellung nicht ausgeführt werden kann. Weitere Informationen finden Sie unter den Referenzthemen für die Überladungen von SPDatabaseSnapshot.Restore().
Rufen Sie diese Methode nicht aus dem eigenen Code. Der Wiederherstellungsprozess wird aufgerufen.
Beispiele
Das folgende Beispiel zeigt eine Implementierung, die für eine Datenbank verwendet werden kann. "this" verweist auf ein Objekt eines benutzerdefinierten geben gewählte SupplementalDatabase , die Entwickler von SPDatabase abgeleitet wurde und IDatabaseSnapshotRestoreimplementiert. Die Methode wird die Datenbank offline geschaltet, und klicken Sie dann für 5 Sekunden, bevor die Wiederherstellung fortgesetzt Navigate hält den Thread.
public void OnPreRestore(SPDatabaseSnapshotRestoreEvent args)
{
if (args == null)
{
throw new ArgumentNullException("args");
}
try
{
this.Status = SPObjectStatus.Offline;
this.Update();
Thread.Sleep(5000);
}
catch (exception)
{
Exception e = new Exception(String.Format("Restoration from {0} cancelled because pre-restoration steps could not be executed.", args.Snapshot.Name), exception);
throw e;
}
}
Siehe auch
Referenz
IDatabaseSnapshotRestore Schnittstelle