On fera le calcul en utilisant deux fonctions:
- GetAttachmentsTotalSize: renvoie la taille totale occupée par les fichiers attachés à l'item;
- GetItemSize: renvoie la taille total des fichiers attachés à laquelle on y ajoute la taille du contenu inclus dans les différents champs.
GetAttachmentsTotalSize
Public Function GetAttachmentsTotalSize(ByVal item as SPListItem) As Integer
Dim size As Integer = 0
For Each filename As String In item.Attachments
Dim file As String = item.Web.GetFileAsString( _
item.Attachments.UrlPrefix + filename)
size = size + file.Length
Next
Return size
End Function
GetItemSize
Public Function GetItemSize(ByVal item as SPListItem) As Integer
Dim size As Integer = GetAttachmentsTotalSize()
For Each field As SPField In item.Fields
If Not (item(field.Id) Is Nothing) Then
size = size + item(field.Id).ToString().Length
End If
Next
Return size
End Function
Bon calcul!