我如何使用sharepoint对象模型以编程方式下载documentSet的代码片段确实会有所帮助。
我想做的是 - 给定sharepoint站点,使用用户默认凭据登录 - 查找托管文件的文档库 - 将文件向下拉到本地计算机
到目前为止我做了什么,
using Microsoft.SharePoint.Client;
ClientContext cc = new ClientContext(ConfigurationManager.AppSettings["site"]);
cc.Credentials = new NetworkCredential(username, pwd, domain);
Web site = cc.Web;
ListCollection collList = site.Lists;
var oList = collList.GetByTitle("Document Set test");
// Get the document set
cc.Load(oList);
cc.ExecuteQuery();
// Get All views
var views = oList.Views;
cc.Load(views);
cc.ExecuteQuery();
// Get All documents
CamlQuery camlQuery = new CamlQuery();
camlQuery.ViewXml = @"<Query>
<ViewFields>
<FieldRef Name='Title'/>
<FieldRef Name='Display Name'/>
</ViewFields>
<Where>
<Gt>
<FieldRef Name='Created' />
<Value IncludeTimeValue='TRUE' Type='DateTime'>1900-05-08T14:25:50Z</Value>
</Gt>
</Where>
<OrderBy>
<FieldRef Name='Title' Ascending='True' />
</OrderBy>
</Query>";
var docs = oList.GetItems(camlQuery);
cc.Load(docs);
cc.ExecuteQuery();
Console.WriteLine(string.Format("{0} Models in the repository", docs.Count));
foreach(文档中的var doc) {
//下载文档集中的文档 - 但是如何?
Console.WriteLine(string.Format("{0} => {1} ", Environment.NewLine, doc["Title"]));
}
Console.WriteLine(Environment.NewLine);
答案 0 :(得分:0)
您会对Microsoft.SharePoint.Client.File.OpenBinaryDirect
方法感兴趣。它返回FileInformation
,通过Stream
属性访问内容。您可以查看other thread here,an MSDN page或a Codeproject article中的代码示例。
是的,Stackoverflow上也有SharePoint开发人员: - )
---费达