SharePoint Web Service系列:获取文档的属性信息
发布日期:2021-06-29 03:55:42 浏览次数:3 分类:技术文章

本文共 1649 字,大约阅读时间需要 5 分钟。

在很多情况下,我们希望外部的应用可以得到位于SharePoint文档库中的文档信息。这时不妨试试通过调用WSS的Web服务来完成。

下面的示例代码完成了获取ID为1的文档(在文档库TestDL1中)的相对URL 和作者信息。   
那ID是从哪里获取的呢?我想大家一定有很多方法啦。比如,文档库事件。

           LabDb.Lists listService 
=
 
new
 LabDb.Lists();
            listService.Credentials 
=
 System.Net.CredentialCache.DefaultCredentials;
           
            XmlDocument txd 
=
 
new
 XmlDocument();
            txd.LoadXml(
"
<Query><Where><Eq><FieldRef Name=/
"
ID/
"
 /><Value Type=/
"
Counter/
"
>1</Value></Eq></Where></Query>
"
);
            XmlNode ndQuery 
=
 txd.SelectSingleNode(
"
Query
"
);
            txd.LoadXml(
"
<ViewFields><FieldRef Name=/
"
ID/
"
 /><FieldRef Name=/
"
FileRef/
"
 /><FieldRef Name=/
"
Author/
"
/></ViewFields>
"
);
            XmlNode ndViewFields 
=
 txd.SelectSingleNode(
"
ViewFields
"
);
            
string
 FileRef 
=
 
""
;
            
string
 Author 
=
 
""
;
            
try
            {
                XmlNode ndReturn 
=
 listService.GetListItems(
"
TestDL1
"
null
, ndQuery, ndViewFields, 
null
null
);
                XmlNamespaceManager nsmgr 
=
 
new
 XmlNamespaceManager(ndReturn.OwnerDocument.NameTable);
                nsmgr.AddNamespace(
"
s
"
"
uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882
"
);
                nsmgr.AddNamespace(
"
dt
"
"
uuid:C2F41010-65B3-11d1-A29F-00AA00C14882
"
);
                nsmgr.AddNamespace(
"
rs
"
"
urn:schemas-microsoft-com:rowset
"
);
                nsmgr.AddNamespace(
"
z
"
"
#RowsetSchema
"
);
                FileRef 
=
 ndReturn.SelectSingleNode(
"
rs:data/z:row
"
, nsmgr).Attributes[
"
ows_FileRef
"
].Value;
                FileRef 
=
 FileRef.Substring(FileRef.IndexOf(
"
#
"
+
 
1
);
                Author 
=
 ndReturn.SelectSingleNode(
"
rs:data/z:row
"
, nsmgr).Attributes[
"
ows_Author
"
].Value;
                Author 
=
 Author.Substring(Author.IndexOf(
"
#
"
+
 
1
);
                Console.WriteLine(FileRef);
                Console.WriteLine(Author);
           }
            
catch
 { }

其中的关键是:

1、Query的编写
2、ViewFields的编写(可选,也可以给null,这样将显示所有)
3、XmlNamespace的添加

转载地址:https://blog.csdn.net/zengjibing/article/details/3816307 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:SharePoint Web Service系列: Add或Update类型为User的项
下一篇:SharePoint Web Service系列:进行列表的增删改

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月28日 12时23分50秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

Atitit 未来数据库新特性展望目录1. 统一的翻页 21.1. 2 Easy Top-N 2019-04-29
paip.tree 生成目录树到txt后的折叠查看 2019-04-29
Attit 现代编程语言重要特性目录第一章 类型系统 基本三大类型 2第一节 字符串 数字 bool 2第二节 推断局部变量 2第三节 动态类型 2第二章 可读性与开发效率 简单性 2 2019-04-29
Atitit glb 3tie city lst 三线城市列表 数据目录1. 全球范围内约90个城市 三线 12. 世界性三线城市全球共 2019-04-29
Atitit glb 1tie 2tie city lst 一二线城市列表数据约50个一线城市Alpha ++ 阿尔法++,,London 伦敦,,New York 纽约,,Alpha + 2019-04-29
Atitit fms Strait (海峡) lst 数据列表目录1. 4大洋 12. 著名的海大约40个,总共约55个海 13. 海区列表 23.1. 、波利尼西亚(Polynesia, 2019-04-29
Atitit Major island groups and archipelagos 主要的岛群和群岛目录资料目录1. 岛群 波利尼西亚(Polynesia, 美拉尼西亚(Melanesia, 2019-04-29
Atitit trave islands list 旅游资源列表岛屿目录1. 东南亚著名的旅游岛屿 21.1. Cjkv 日韩 冲绳 琉球 济州岛 北海道 21.2. 中国 涠洲岛 南澳 2019-04-29
Atitit 旅游强县城 名单列表 旅游资源但其实,北上广深大概只占全国面积的0.33%,加上新一线城市,也只是占了全国面积的3%。在剩下的97%的土地上,有着约300个地级市,3000个 2019-04-29
零基础小白,如何从零开始搭建网站?(详细步骤) 2019-04-29
零基础小白,如何从零开始搭建网站?(详细步骤) 2019-04-29
安装体验鸿蒙Harmony OS开发工具HUAWEI DevEco Studio 2.1和汉化 2019-04-29
在OpenHarmony上开发的第一个应用-WIFI(上) 2019-04-29
远程真机调试+Cocos开发鸿蒙游戏 2019-04-29
企业为何要上云? 2019-04-29
腾讯、阿里场外“旁观”,谁将杀进千亿美元SaaS圈? 2019-04-29
做普惠AI实干家,华为云“Cloud+X”助力杭州打造数字经济第一城 2019-04-29
云计算的前世今生 2019-04-29
远端异步调用事件结果 2019-04-29
PAIP.pdf使用 2019-04-29