SharePoint 服务器端对象迁移文件夹

简介:   最近有个需求,写个定时迁移文件夹的小程序,因为计时器任务比较繁琐,所以选择了控制台程序。然后,用windows的计划任务执行,也许,会有广大朋友需要类似的功能,简单的分享一下代码逻辑,功能非常简单,希望大家不要见笑。

  最近有个需求,写个定时迁移文件夹的小程序,因为计时器任务比较繁琐,所以选择了控制台程序。然后,用windows的计划任务执行,也许,会有广大朋友需要类似的功能,简单的分享一下代码逻辑,功能非常简单,希望大家不要见笑。
  //提升权限代码

SPSecurity.RunWithElevatedPrivileges(delegate()
{
  //提升权限的核心代码
});

  //创建网站集和网站对象

using (SPSite site = new SPSite(siteUrl))
{
  using (SPWeb web = site.OpenWeb(webUrl))
  {
  }
}

  //允许非安全更新,否则客户端调用可能回报不安全更新操作的错误

web.AllowUnsafeUpdates = true;
web.AllowUnsafeUpdates = false;

  //获取文档库和文件夹 

SPList sDoclib = web.Lists[sourceDoclib];
SPList tDoclib = web.Lists[transferDoclib];
SPListItemCollection items = sDoclib.Folders;

  //遍历文件夹,并迁移到目标文档库 

foreach (SPListItem item in items)
{
  SPFileCollection files = item.Folder.Files;
  item.Folder.MoveTo(web.Url + "/" + tDoclib.RootFolder.Url.ToString() + "/" + item.Folder.Name);
}

  特别要说的是MoveTo的方法,如果要保留源文档库的内容,只是复制也可以用CopyTo。这两个方法既可以对SPFolder使用,也可以对SPFile使用,参数是目标的地址。记住,参数一定是地址,比如源文件是http://url/sourceLib/file.txt,目标文件就需要是http://url/transferLib/file.txt。如果是文件夹,目标地址就可以是http://url/transferFolder就可以了。

  整个功能很简单,其间注意事项有:

  • Net Framework的版本要和SharePoint版本相对应
  • 控制台程序要以64位程序为目标平台
  • 提升权限进行操作,以防止操作没有权限
  • 允许不安全更新,更新完毕记得关闭这个设置
  • MoveTo和CopyTo方法的使用

  当然,除此之外,必要的异常处理和日志记录也是必须的,大家按照需求添加相关功能就可以了。我这里就简单的把日志记录在记事本中,方便查看了。

using System.IO;

  //写入日志代码,日志路径和生成的.exe文件在同一位置

StreamWriter sw = new StreamWriter("log.txt");
sw.WriteLine("日志内容");
sw.Flush();
sw.Close();

  以上便是整个功能的详细介绍,希望能够为有需要的人带来一定的帮助。当然,如果高手飘过欢迎指点,不喜勿喷,多谢!

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
存储 人工智能 Serverless
将Stable Diffusion模型文件转存到FC环境的NAS
本文将会指导你开通基于NAS的Stable Diffusion 函数计算FC环境,并且可以将SD模型库的模型转存下载到FC应用下的NAS存储空间
4319 2
将Stable Diffusion模型文件转存到FC环境的NAS
|
域名解析 缓存 网络协议
解决宝塔报错提示:您的请求在Web服务器中没有找到对应的站点
解决宝塔报错提示:您的请求在Web服务器中没有找到对应的站点
解决宝塔报错提示:您的请求在Web服务器中没有找到对应的站点
|
9月前
|
人工智能 弹性计算 安全
2026阿里云无影云电脑入口及技术特性、场景适配与综合体验测评
在终端云计算快速发展的当下,阿里云无影云电脑凭借自主技术架构与多场景适配能力,成为企业数字化办公与个人高效计算的重要选择。下面从官方入口与版本差异、核心技术特性、性能表现、场景适配、安全能力等维度展开测评,为用户提供客观参考。
|
8月前
|
人工智能 安全 机器人
OpenClaw(原Moltbot、Clawdbot)阿里云一键部署教程,构建钉钉AI机器人
OpenClaw(原Moltbot、Clawdbot)是一款开源的本地优先AI代理与自动化平台,能够将多渠道通信能力与大语言模型深度集成,助力用户创建具备持久记忆与主动执行能力的定制化AI助理。本文将详细拆解OpenClaw的部署流程及钉钉AI机器人的集成配置步骤,全程无营销词汇,严格遵循原有技术逻辑与操作细节,确保信息的准确性与完整性,同时提醒用户在使用前充分评估其安全性与稳定性,严格遵循许可协议,保障系统环境与数据安全。
1761 5
|
机器学习/深度学习 人工智能 API
大模型推理服务全景图
国内大模型推理需求激增,性能提升的主战场将从训练转移到推理。
4253 150
|
9月前
|
人工智能 JavaScript 安全
Clawdbot 对接飞书详细教程 手把手搭建你的专属 AI 助手
本教程手把手教你将 Moltbot(原 Clawdbot)部署在 Linux 服务器,并对接飞书打造专属 AI 助手:涵盖环境准备、Node.js/NVM 安装、Moltbot 快速安装(支持 Qwen 模型)、Web 管理面板配置及飞书应用创建、权限设置与事件回调对接,全程图文指引,安全可靠。
5342 4
Clawdbot 对接飞书详细教程 手把手搭建你的专属 AI 助手
|
9月前
|
自然语言处理 运维 物联网
大模型微调技术入门:从核心概念到实战落地全攻略
本课程系统讲解大模型微调核心技术,涵盖全量微调与高效微调(LoRA/QLoRA)原理、优劣对比及适用场景,深入解析对话定制、领域知识注入、复杂推理等四大应用,并介绍Unsloth、LLaMA-Factory等主流工具与EvalScope评估框架,助力从入门到实战落地。
|
9月前
|
人工智能 安全 搜索推荐
科技云报到:2026,AI开启“共生智能”新纪元
2026年,港股AI热潮引爆,智谱AI与MiniMax接连上市,募资近百亿、市值破千亿,标志国产AI迈入资本化新阶段。技术从“预测文本”迈向“理解世界”,具身智能、多模态、世界模型推动产业重构。ToC超级应用与ToB垂直场景双轨并进,AI正式成为社会基础设施。科技云报道,见证AI价值爆发元年。
522 0

热门文章

最新文章