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

最近有个需求,写个定时迁移文件夹的小程序,因为计时器任务比较繁琐,所以选择了控制台程序。然后,用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();

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

BEGINNING SHAREPOINT® 2013 DEVELOPMENT 文件夹

BEGINNING SHAREPOINT® 2013 DEVELOPMENT 文件夹 第一部分--開始使用SharePoint 2013 第1章节--SharePoint 2013 介绍 逐渐了解Sh ...

SharePoint文档库文件夹特殊字符转义

当我们在SharePoint网站文档库中新建文件夹时包含了~ " # % & * : < > ? / \ { | }字符时(一共15个), 或者以.开头或者结束,或者包含 ...

Python批量复制迁移文件夹

前言 Python可以利用shutil库进行对文件夹,文件的迁移.而在本次的实践当中,难点在于目标文件夹的名称和数据源文件夹的名称,需要利用 工作单位提供的中间数据去进行对比连接起来. 例如:目标源的 ...

sharepoint REST API 获取文件夹及文件

使用REST操作文件夹: 获取文件夹 url: http://site url/_api/web/GetFolderByServerRelativeUrl('/Shared Documents')/f ...

设置SharePoint部门站点各个文件夹的权限

最近跟客户设置了下部门站点文件夹的权限,现整理一下实现步骤: 1. Site actions –> site permissions: 停止继承,并把部门所有员工都授予Read权限: 2. 在S ...

Windows下Java File对象创建文件夹时的一个&quot&semi;坑&quot&semi;

import java.io.File; import java.io.IOException; public class DirCreate { public static void main(St ...

从Windows10中彻底删除【3D对象】文件夹

Remove "3D object" folder from My Computer Windows Registry Editor Version 5.00 [-HKEY_LOC ...

SharePoint服务器端对象模型 之 访问文件和文件夹(Part 3)

(三)遍历 文件系统的遍历是指按照文件夹的层级结构遍历文档库.列表的文件夹和列表条目.遍历主要有三种方式:(1)直接使用文件系统对象模型进行遍历:(2)使用SPDocumentLibrary进行遍历: ...

Sharepoint中有关文件夹的操作

1.GetItemsWithUniquePermissions根据返回数量和是否返回文件夹获取唯一权限的列表项集合 对于SharePoint对象模型中SPList的GetItemsWithUnique ...

随机推荐

&lbrack;ASP&period;NET MVC 小牛之路&rsqb;13 - Helper Method

我们平时编程写一些辅助类的时候习惯用“XxxHelper”来命名.同样,在 MVC 中用于生成 Html 元素的辅助类是 System.Web.Mvc 命名空间下的 HtmlHelper,习惯上我们把 ...

Activty四种启动模式

Activty启动提供了四种启动模式.launchMode: standard:每次启动新的活动窗口(new操作) singleTop:如果在栈顶是目标活动,则直接打开.否则开启新的活动窗口(new) ...

cocos2d-x之悦动的小球

发现问题:update()函数不能用virtual前缀 主: bool HelloWorld::init() { if ( !LayerColor::initWithColor(Color4B(255 ...

angularjs transclude demo

Shell遍历文件,对每行进行正则匹配

Shell查看文件的最后5行,并对每行进行正则匹配,代码如下: #!/bin/sh pattern="HeartBeat" /home/test/log/log_20150205. ...

CSS sprites减少HTTP请求

使用CSS sprites减少HTTP请求   sprites是鬼怪,小妖精,调皮鬼的意思,初听这个高端洋气的名字我被震慑住了,一步步掀开其面纱后发觉很简单的东西,作用却很大 神马是CSS 小妖精 C ...

兼容 console 没删除引起 低级浏览器 报错问题

/*重写connsole.log,防止调试代码出错*/if (!window.console){ var names = ["log", "debug", &q ...

&lbrack;ffmpeg&rsqb; h&period;264解码所用的主要缓冲区介绍

在进行h264解码过程中,有两个最重要的结构体,分别为H264Picture.H264SliceContext. H264Picture H264Picture用于维护一帧图像以及与该图像相关的语法元 ...

确定有穷自动机(DFA)的化简(最小化)

参考博客地址:https://blog.csdn.net/qq_33605778/article/details/80105658

C&num; winform 打开主界面并关闭登录界面

在winform 界面编程中,我们有时候要在主界面打开之前先显示登录界面,当登录界面用户信息校验正确后才打开主界面,而这时登陆界面也完成使命该功成身退了. 目前有两种方法可实现: 方法1. 隐藏登录界 ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值