• 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);

  • 相关阅读:
    webpack配置之代码优化
    react组件生命周期
    javascript记住用户名和登录密码
    ajax异步请求原理和过程
    深入理解ajax系列第五篇——进度事件
    ajax多次请求,只执行最后一次的方法
    CentOS6.8下MySQL MHA架构搭建笔记
    HTTP状态码
    什么是 Redis 事务?原理是什么?
    Redis 通讯协议是什么?有什么特点?
  • 原文地址:https://www.cnblogs.com/xdanny/p/12586167.html
Copyright © 2020-2023  润新知