如何从链接下给出的SharePoint列表中读取文件内容

时间:2019-07-08 16:24:23

标签: c# sharepoint-2013

我在SharePoint中有一个列表,其中包含很多元数据,并且具有多个列表项以及文件链接。

文档名称,作者,修改日期,文档链接

我能够读取所有元数据,但我也想读取流中文件的内容。为此,我需要一个c#函数,该函数将转到每个列表项的链接,读取内容并向我返回文件流。请帮助。

1 个答案:

答案 0 :(得分:0)

供参考的示例代码(Document_Link是超链接字段),该链接指向同一网站,如果您的链接指向其他网站,则需要init ClientContext进行目标网站集。

using(var context=new ClientContext("http://sp"))
            {
                var web = context.Web;
                var list = web.Lists.GetByTitle("MyList");
                var item = list.GetItemById(1);
                context.Load(web);
                context.Load(item);
                context.ExecuteQuery();
                var fileLink = item["Document_Link"] as FieldUrlValue;

                var file = web.GetFileByServerRelativeUrl(fileLink.Url.Replace(web.Url,""));
                context.Load(file);
                context.ExecuteQuery();
                //to do
                //var stream = file.OpenBinaryStream();
                Console.WriteLine("complete");
            }