IBackupRestore.DiskSizeRequired - Propriété
Obtient la quantité d'espace disque, en octets, qui est nécessaire pour stocker une sauvegarde du contenu représenté par l'objet IBackupRestore .
Espace de noms : Microsoft.SharePoint.Administration.Backup
Assembly : Microsoft.SharePoint (dans Microsoft.SharePoint.dll)
Syntaxe
'Déclaration
ReadOnly Property DiskSizeRequired As ULong
Get
'Utilisation
Dim instance As IBackupRestore
Dim value As ULong
value = instance.DiskSizeRequired
ulong DiskSizeRequired { get; }
Valeur de propriété
Type : System.UInt64
Un UInt64 qui représente la taille, en octets, qui est nécessaire pour enregistrer les données sur le périphérique de stockage.
Remarques
La propriété DiskSizeRequired est lu au moment de l'exécution par la méthode DiskSizeRequired() . La dernière méthode ajoute 1 Ko à la valeur retournée et puis ajoute les valeurs de tous la propriété DiskSizeRequired de chacun des objets enfant IBackupRestore .
Remarques destinées aux responsables de l’implémentation
Votre accesseur get doit récupérer et somme de la taille des fichiers et les bases de données et la taille de tous les objets BLOB qui sont supérieures à 1 K octets. Si tous ces éléments totale inférieure à 1 Ko, l'accesseur get doit retourner 0.
Effectuez pas inclure la taille de tous les objets enfants qui sont eux-mêmes des objets IBackupRestore . La taille des objets enfants IBackupRestore est ajoutée à la taille totale au moment de l'exécution, par la méthode DiskSizeRequired() . La taille de l'enfant sera ajoutée au total deux fois s'ils ont été également ajoutés par l'accesseur get de leur parent.
La plupart des classes de IBackupRestore qui ont les classes enfants IBackupRestore sont simplement des conteneurs et la propriété DiskSizeRequired de telles classes renvoie la valeur 0. Par exemple, SPFarm.DiskSizeRequired est toujours 0.
Exemples
L'exemple suivant totalise les tailles de tous les fichiers dans un tableau d'objets FileInfo appelé FrontEndFiles , qui est elle-même remplie à partir d'une collection de chemins d'accès appelée FrontEndFilePaths qui est déclarée ailleurs sous la forme d'un champ privé dans la classe.
Notes
La collection de chaînes au lieu de stocker la collection d'objets FileInfo le stockage lui-même est un avantage si la classe dérive directement ou indirectement, à partir de la classe SPPersistedObject . La dernière classe peut avoir persistance String membres (collections et d'entre eux), mais il ne peut pas conserver les membres de l'objet FileInfo .
public UInt64 DiskSizeRequired
{
get
{
UInt64 total = 0;
List<FileInfo> FrontEndFiles = new List<FileInfo>(NUMBER_OF_FILES_TO_BACK_UP);
foreach (String path in FrontEndFilePaths)
{
FileInfo file = new FileInfo(path);
FrontEndFiles.Add(file);
}
foreach (FileInfo file in FrontEndFiles)
{
total = total + (UInt64)file.Length;
}
return total;
}
}
Public ReadOnly Property DiskSizeRequired() As UInt64
Get
Dim total As UInt64 = 0
Dim FrontEndFiles As New List(Of FileInfo)(NUMBER_OF_FILES_TO_BACK_UP)
For Each path As String In FrontEndFilePaths
Dim file As New FileInfo(path)
FrontEndFiles.Add(file)
Next path
For Each file As FileInfo In FrontEndFiles
total = total + CULng(file.Length)
Next file
Return total
End Get
End Property