SPFile.Properties - Propriété
Obtient les métadonnées du fichier.
Espace de noms : Microsoft.SharePoint
Assembly : Microsoft.SharePoint (dans Microsoft.SharePoint.dll)
Syntaxe
'Déclaration
Public ReadOnly Property Properties As Hashtable
Get
'Utilisation
Dim instance As SPFile
Dim value As Hashtable
value = instance.Properties
public Hashtable Properties { get; }
Valeur de propriété
Type : System.Collections.Hashtable
Un objet System.Collections.Hashtable qui contient les métadonnées.
Remarques
Notes
Stockez de grandes quantités de données dans cette propriété sera sérieusement dégrader les performances. Ne stockez pas plus d'un kilo-octet (1 Ko) de données utilisateur dans cette propriété.
Le modèle d'objet Windows SharePoint Services 3.0 prend en charge la mise à jour des métadonnées de fichiers. Vous pouvez utiliser un indexeur sur cette propriété pour définir une valeur. Par exemple, pour définir la valeur de la propriété MyDate pour un fichier donné à la date et l'heure, utilisation de l'indexeur et appelez la méthode Update , comme suit :
[Visual Basic]
oFile("MyDate") = DateTime.Now
oFile.Update()
[C#]
oFile["MyDate"] = DateTime.Now;
oFile.Update();
Exemples
L'exemple de code suivant parcourt la collection de fichiers dans une bibliothèque de documents et affiche les propriétés et les valeurs pour chaque fichier.
Cet exemple requiert les directives using (Imports dans Visual Basic) pour les espaces de noms Microsoft.SharePoint et Microsoft.SharePoint.Utilities .
Dim siteCollection As SPSite = SPContext.Current.Site
Dim site As SPWeb = siteCollection.AllWebs("Site_Name")
Dim folder As SPFolder = site.Folders("Shared Documents")
Dim files As SPFileCollection = folder.Files
Dim file As SPFile
For Each file In files
Dim hash As System.Collections.Hashtable = file.Properties
Dim keys As System.Collections.ICollection = hash.Keys
Dim key As Object
For Each key In keys
Response.Write(SPEncode.HtmlEncode(key.ToString())
& " :: " & SPEncode.HtmlEncode(hash(key.ToString())
.ToString()) & "<BR>")
Next key
Next file
SPSite oSiteCollection = SPContext.Current.Site;
using(SPWeb oWebsite = oSiteCollection.AllWebs["Site_Name"])
{
SPFolder oFolder = oWebsite.Folders["Shared Documents"];
SPFileCollection collFiles = folder.Files;
foreach (SPFile oFile in collFiles)
{
System.Collections.Hashtable collHashes = file.Properties;
System.Collections.ICollection collKeys = hash.Keys;
foreach (object oKey in collKeys)
{
Response.Write(SPEncode.HtmlEncode(oKey.ToString())
+ " :: " +
SPEncode.HtmlEncode(hash[oKey.ToString()].ToString())
+ "<BR>");
}
}
}
L'exemple précédent affiche les métadonnées semblable à la suivante :
vti_author :: User_Name
vti_cachedtitle :: New Page 1
vti_metatags :: HTTP-EQUIV=Content-Language en-us GENERATOR Microsoft\
FrontPage\ 5.0 ProgId FrontPage.Editor.Document
HTTP-EQUIV=Content-Type text/html;\ charset=windows-1252
vti_progid :: FrontPage.Editor.Document
vti_cachedbodystyle ::
vti_modifiedby :: User_Name
vti_charset :: windows-1252
vti_sourcecontrolcheckincomment :: Comment
vti_nexttolasttimemodified :: 5/6/2003 8:16:58 PM
vti_filesize :: 6439
vti_docstoretype :: 0
vti_language :: en-us
vti_generator :: Microsoft FrontPage 5.0
vti_timelastmodified :: 5/6/2003 8:59:25 PM
vti_title :: File_Title
vti_docstoreversion :: 2
vti_sourcecontrolcookie :: fp_internal
vti_sourcecontrolversion :: V2
vti_cachedneedsrewrite :: false
vti_timecreated :: 5/6/2003 8:16:58 PM
vti_cachedcustomprops :: vti_title
vti_cachedhastheme :: false
Notes
Certains objets implémentent l'interface IDisposable , et vous devez éviter de conserver ces objets dans la mémoire après que qu'ils ne sont plus nécessaires. Pour plus d'informations sur les bonnes pratiques de codage, consultez Disposing Objects.