[SharePoint]使用代码获取Document Set对象信息
2010-12-15 02:39
239 查看
什么是文档集
文档集是SharePoint 2010中一个新加入的功能,它可以帮助我们更好的对SharePoint中的文档进行管理。文档集为其内保存的所有文档提供了统一的用户界面 (UI)、元数据、行为,它使文档与SharePoint站点之间联系的更加紧密了。其实可以将文档集看成是一个功能更加强大的文件夹,因为文档集内容类型就是派生自文件夹内容类型的。
如何获取文档集信息
在创建文档集内容类型时我们是可以将该内容类型中的字段设置为共享列,共享列的值可以自动的被同步到文档集中的所有文档。
在开发过程中,如果要通过文档集中的文档对象获取这些共享列的内容时,完全可以像获取普通的列表字段那样来获取共享列的值。
有了Folder对象就可以很容易的获得这个文档集的DocumentSet对象了。
文档集是SharePoint 2010中一个新加入的功能,它可以帮助我们更好的对SharePoint中的文档进行管理。文档集为其内保存的所有文档提供了统一的用户界面 (UI)、元数据、行为,它使文档与SharePoint站点之间联系的更加紧密了。其实可以将文档集看成是一个功能更加强大的文件夹,因为文档集内容类型就是派生自文件夹内容类型的。
如何获取文档集信息
在创建文档集内容类型时我们是可以将该内容类型中的字段设置为共享列,共享列的值可以自动的被同步到文档集中的所有文档。
在开发过程中,如果要通过文档集中的文档对象获取这些共享列的内容时,完全可以像获取普通的列表字段那样来获取共享列的值。
如果要获得文档集内的非共享列的内容呢?这时应该怎么办呢?例如文档集的名称字段或者一些隐藏字段,这些字段是无法设置为共享列的。 此时就要想办法获得该文档集的DocumentSet对象了,为了获得DocumentSet对象需要使用DocumentSet.GetDocumentSet(SPFolder folder)方法,该方法需要一个SPFolder对象作为参数,前面已经说过了可以将文档集看成一个文件夹,那么我们可以使用下面的代码来获得这个SPFolder对象。 SPFolder folder= item.Web.GetFolder(item.Url.Substring(0, item.Url.LastIndexOf('/')));
有了Folder对象就可以很容易的获得这个文档集的DocumentSet对象了。
接着再使用DocumentSet对象的Item属性就可以获得与这个文档集对象关联的SPListItem对象,这时就可以很容易的获得该文档集的各个字段的内容了。 try { SPListItem item = SPContext.Current.ListItem; SPFolder folder= item.Web.GetFolder(item.Url.Substring(0, item.Url.LastIndexOf('/'))); DocumentSet set = DocumentSet.GetDocumentSet(folder); writer.WriteLine("ContentType: {0}<br/>", item.ContentType.Name); writer.WriteLine("Title: {0}<br/>", item.Title); writer.WriteLine("WelcomePageUrl: {0}<br/>", set.WelcomePageUrl); writer.WriteLine("ItemCount: {0}<br/>", set.Folder.ItemCount); writer.WriteLine("Welcomepage Fields:<br/>"); DocumentSetTemplate template = set.ContentTypeTemplate; WelcomePageFieldCollection fields = template.WelcomePageFields; foreach (SPField field in fields) { writer.WriteLine("{0}<br/>", field.Title); } } catch (Exception) { }
相关文章推荐
- 使用 Unity(二):配置 Unity 、读取配置信息和获取对象
- 使用 Python 获取 Linux 系统信息的代码
- SharePoint 2013 中使用代码获取 search reports(Top_Queries, Abandoned_Queries,No_Result_Queries )
- sharepoint 2010 使用WinForm获取 SPSite对象
- 在vb中使用Iphlpapi.dll获取网络信息 第四章 第一节 错误代码
- 使用 Python 获取 Linux 系统信息的代码
- Java反射之通过反射获取一个对象的方法信息(实例代码)
- 使用 Python 获取 Linux 系统信息的代码
- 在SharePoint中无代码开发InfoPath应用: 获取当前用户信息
- SharePoint【调试,诊错系列】-- 使用代码获取当前Request的CorrelationID
- 获取对象的接口信息(方法/属性/事件)(VB6代码)
- VC中GetLastError()获取错误信息的使用,以及错误代码的含义
- 使用Java获取系统信息的常用代码整理总结
- 获取对象的接口信息(方法/属性/事件)(VB6代码)
- 使用 Unity(二):配置 Unity 、读取配置信息和获取对象
- 使用 Unity(二):配置 Unity 、读取配置信息和获取对象
- 使用表达式树访问对象、类型及成员(上):获取类型和成员的信息
- 初学Python的学习笔记9----面向对象编程(获取对象信息、实例属性和类属性)、面向对象高级编程(使用__slots__、使用@property)
- FormData使用,上传图片和对象信息(参考代码)
- 使用PHP的反射Reflection获取对象信息