zoukankan      html  css  js  c++  java
  • CSOM 转移文档到其它目录

    先创建一个项目,然后写一个转移方法

    public static void movefiles()

    {

    try{

      ClientContent clientContext = new ClientContext(siteUrl);

      clientContext.RequestTimeout = Timeout.Infinite;

      var user name = "";

      var password ="";

      clientContext.Credentials = new NetworkCredential(username,password,domain);

      clientContext.Credentials = CredentialCache.DefaultCredentials;

      Guid listId = new Guid("A9999---");

      Web web = clientContext.Web;

      List docList = web.Lists.GetById(listId);

      CamlQuery camlQuery = new CamlQuery();

      camlQuery.ViewXml = "";

      ListItemCollection items = docList.GetItems(camlQuery);

      clientContext.Load(docList);

      clientContext.Load(items);

      clientContex.ExecuteQuery();

      int count = 1;

      foreach(var item in items)

      {

      Console.WriteLine("共"+items.Count + "个");

      SP. File file = item.Fiel;

      clientContext.Load(file);

      clientContex.Load(web);

      clientContex.ExecuteQuery();

      string destLocation = "/site/library/folder/"+file.name;

      //FileInfomation fileInfo = SP.File.OpenBinaryDirect(clientContex,file.ServierRelativeUrl);

      //SP.File.SaveBinaryDirect(clientContex,destLocation,fileInfo.Stream,true);

      if(item.FileSystemObjectType == FileSytemObjectType.File)

      {

      file.MoveTo(destLocation,MoveOperations.Overwrite);

      clientContex.ExecuteQuery();

      var uploadfile = clientContext.Web.GetFileByServerRelatioveUrl(destLocation);

      var listitem = uploadfile.ListItemAllFields;

      listitem["ContentTypeId"] = "0x0....";

      listitem.Update();

      clientContext.ExecuteQuery();

        count ++;

      clientContext.Dispose();

      Console.WriteLine("完成。")

           }catch(Exception e)

      {

      Console.WriteLine("{0}",e.Message);

      return;

      }

    }

    下载文档的方法:

    FileInformation fInfo = SP.File.OpenBinaryDirect(clientContext,item["FileRef").ToString();

    stream s= fInfo.Stream;

    string saveTo=@"D:\folder"+filename;

    FileStream writeStream = new FileStream(saveTo,FileMode.Create,FileAccess.Write);

    ReadWriteStream(s,writeStream);

  • 相关阅读:
    svn安装教程
    六、数组类的创建
    五、顺序存储线性表分析
    四、StaticList 和 DynamicList
    三、顺序存储结构的抽象实现
    二、线性表的顺序存储结构
    一、线性表的本质和操作
    专题五:局部变量、全局变量global、导入模块变量
    专题四:文件基础知识、字符编码
    专题3-2:列表基础知识:二维list排序、获取下标和处理txt文本实例
  • 原文地址:https://www.cnblogs.com/xdanny/p/12586167.html
Copyright © 2011-2022 走看看