获取元数据的文件。
命名空间: Microsoft.SharePoint
程序集: Microsoft.SharePoint(位于 Microsoft.SharePoint.dll 中)
语法
声明
Public ReadOnly Property Properties As Hashtable
Get
用法
Dim instance As SPFile
Dim value As Hashtable
value = instance.Properties
public Hashtable Properties { get; }
属性值
类型:System.Collections.Hashtable
System.Collections.Hashtable对象,该对象包含的元数据。
备注
备注
在此属性中存储的大量数据将会严重降低性能。不要将超过 1 千字节 (1 k) 的用户数据存储在此属性中。
Windows SharePoint Services 3.0对象模型支持更新文件元数据。可以在此属性上使用索引器设置值。例如,若要将一个给定文件的MyDate属性的值设置为当前日期和时间,使用索引和,如下所示调用Update方法:
[Visual Basic]
oFile("MyDate") = DateTime.Now
oFile.Update()
[C#]
oFile["MyDate"] = DateTime.Now;
oFile.Update();
示例
下面的代码示例循环访问文档库中的文件的集合,并显示的属性和值的每个文件。
此示例要求using指令 (在 Visual Basic 中的Imports ) 的Microsoft.SharePoint和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>");
}
}
}
前面的示例中显示类似于以下元数据:
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
备注
某些对象实现IDisposable接口,并必须避免后不再需要保留这些对象在内存中。好的编码做法有关的信息,请参阅Disposing Objects。