IBackupRestore.DiskSizeRequired property
Obtém a quantidade de espaço em disco, em bytes, que é necessário para armazenar um backup do conteúdo representado pelo objeto IBackupRestore .
Namespace: Microsoft.SharePoint.Administration.Backup
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Syntax
'Declaração
ReadOnly Property DiskSizeRequired As ULong
Get
'Uso
Dim instance As IBackupRestore
Dim value As ULong
value = instance.DiskSizeRequired
ulong DiskSizeRequired { get; }
Property value
Type: System.UInt64
Um UInt64 que representa o tamanho, em bytes, que é necessário para salvar os dados no dispositivo de armazenamento.
Comentários
A propriedade DiskSizeRequired é lida em tempo de execução pelo método DiskSizeRequired() . O último método adiciona 1K bytes para o valor retornado e, em seguida, adiciona os valores de todos os a propriedade DiskSizeRequired de cada um dos objetos filho IBackupRestore .
Notes to implementers
O acessador de get deve recuperar e soma o tamanho dos arquivos e os bancos de dados e o tamanho de todos os BLOBs são maiores do que 1 K bytes. Se todos esses juntos total menos de 1 K bytes, o acessador de get deve retornar a 0.
Fazer não incluir o tamanho de todos os objetos filho que também são objetos IBackupRestore . O tamanho dos objetos IBackupRestore filho é adicionado para o tamanho total em tempo de execução pelo método DiskSizeRequired() . O tamanho dos filhos seria adicionado ao total duas vezes caso também foram adicionadas, o acessador de get de seu pai.
A maioria das classes de IBackupRestore com classes de IBackupRestore filho são apenas contêineres e a propriedade DiskSizeRequired de tais classes retornará 0. Por exemplo, SPFarm.DiskSizeRequired é sempre 0.
Examples
O exemplo a seguir resume os tamanhos de todos os arquivos em uma matriz de objetos FileInfo chamado FrontEndFiles , que também é preenchido a partir de um conjunto de caminhos chamado FrontEndFilePaths que é declarado em outro lugar, como um campo particular na classe.
Dica
Se armazenar a coleção de seqüências de caracteres em vez de armazenar a coleção de objetos FileInfo é uma vantagem se a classe derivada, diretamente ou indiretamente, da classe SPPersistedObject . A segunda classe pode ter membros de String persistentes (e coleções deles) mas -não é possível manter membros do objeto 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