IBackupRestore 接口
启用一个类表示要备份和还原的内容。
命名空间: Microsoft.SharePoint.Administration.Backup
程序集: Microsoft.SharePoint(位于 Microsoft.SharePoint.dll 中)
语法
声明
<SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel := True)> _
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel := True)> _
Public Interface IBackupRestore
用法
Dim instance As IBackupRestore
[SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel = true)]
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
public interface IBackupRestore
备注
通过实现此接口表示SharePoint Foundation部署中的某些内容的对象将成为能够备份和恢复一些。
您的代码不直接调用IBackupRestore的成员。您实现了它后,代码将构造您的自定义IBackupRestore类的对象,并使用**Update()**方法将其添加到配置数据库。备份和还原时,备份和恢复应用程序,如SharePoint Foundation管理中心应用程序、 stsadm.exe 控制台应用程序,以及SharePoint Management Shell cmdlet 将使对IBackupRestore对象的成员的内部调用。有关如何使用IBackupRestore对象的详细信息,请参阅How to: Create a Content Class That Can be Backed Up and Restored。
您可以创建任意数量的类型所需的IBackupRestore类,如果需要,它们可以嵌套组件的类的树。但最高在任何此类树必须从派生的类 (直接或间接) 的SPPersistedObject类,并且必须是SPFarm的子元素。如果您的内容类不是子节点的任何其他自定义内容类,它必须从SPPersistedObject对象派生 (直接的或间接的),并且必须是SPFarm的子元素。
如果您的类派生的类已实现IBackupRestore接口,并且您想要替换的IBackupRestore成员的继承的实现,类声明应显式引用IBackupRestore如下:
public class MyClass : SPPersistedObject, IBackupRestore
Public Class [MyClass]
Inherits SPPersistedObject
Implements IBackupRestore
End Class
任何 IBackupRestore 成员的"替代"都应在成员名称中明确包括"IBackupRestore",并且不应包含 public 关键字。例如:
String IBackupRestore.Name { ... }
Private Property Name() As String Implements IBackupRestore.Name
...
End Property
此外,如果父类中的成员的实现使用了 virtual 或 override 关键字,则可以在实现中使用如下所示的 override 关键字:
public override String Name { ... }
Public Overrides Property Name() As String
...
End Property
请不要不隐藏继承的成员隐藏的成员使用或不使用new关键字 ([new] public String Name { ... }) 而实现。
如果从SPPersistedObject派生类,必须使用[Persisted]属性前面您希望保存在配置数据库中的字段的声明。但是,您可以只标记以下类型的字段以这种方式: 基元类型 (如字符串、 整型和 Guid。其他SPPersistedObject或SPAutoserializingObject的对象 ;或上述任何一项的集合。例如,类不能有FileInfo字段标有[Persisted]属性。如果您想要保留的数据不是一个持久的类,使用持久替代项。DiskSizeRequired属性参考主题中的示例实现设想仍然存在的文件的名称的集合,并使用它们在运行时创建一个临时的FileInfo对象集合的类。
如果您的类可以有多个相同类型的子级,则创建的属性或字段的集合类型,或者其他可枚举类型来保存给定类型的所有子对象的集合。这一点特别重要,如果子类型本身实现IBackupRestore,因为**AddBackupObjects()方法的实现应循环访问此类儿童并调用每个子元素的AddBackupObjects()**方法。
基本上是类型为SPBackupRestoreInformation的对象和对象类型IBackupRestore之间的一对一映射。每一个都提供处理备份或还原的特定类型的内容的组件所需的信息的一部分。这两种类型的对象引用,分别在Information和IBackupRestoreSPBackupRestoreObject对象的属性。后一类中,除了作为相关的SPBackupRestoreInformation和IBackupRestore对象的容器的SPBackupRestoreConsoleObject对象提供帮助器函数。
备注
如果您组件的类表示配置设置的场的范围或内容发布 Web 服务的范围内,不同于内容,它也应该实现IBackupRestoreConfiguration ,其中包括IBackupRestore。