我们可以基于WSS构建强大的项目。做为开发人员,我们有时需要创建基于WSS的自定义 Web服务来满足特定的开发要求。 注意:由于WSS增强的安全性,我们需要一些特殊的步骤来创建自定义Web服务......
2021-06-25 897 SharePoint Web Services
最近有个需求,写个定时迁移文件夹的小程序,因为计时器任务比较繁琐,所以选择了控制台程序。然后,用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();
以上便是整个功能的详细介绍,希望能够为有需要的人带来一定的帮助。当然,如果高手飘过欢迎指点,不喜勿喷,多谢!
相关文章
我们可以基于WSS构建强大的项目。做为开发人员,我们有时需要创建基于WSS的自定义 Web服务来满足特定的开发要求。 注意:由于WSS增强的安全性,我们需要一些特殊的步骤来创建自定义Web服务......
2021-06-25 897 SharePoint Web Services
我们已经介绍了一些关于搜索的相关配置,当然,用户关于搜索的要求可能是各种各样。有时候,用户会说,你们的显示结果太Low了,确实是;不过,在SharePoint中,我们可以很容易的定制搜索......
2021-06-25 949 SharePoint定制搜索显示模板
最近有这样一个需求,创建一个表单,里面有多行文本字段,但是要求内容默认带一个表格,这样用户新建项目的时候,就可以直接填表格了。 好吧,这样的需求我们可以通过JavaScript实现。......
2021-06-25 721 SharePoint 多行文本字段设置默认值
最近,使用工作流的时候碰到了一个问题,突然间所有工作流都无法启动,报错Failed on started. 同时,工作流内部报错,工作流被系统账号取消了。 查了很久,发现系统打了windows server security......
2021-06-25 777 SharePoint,workflows,stop,working,Failed,started.,最近,
最近在用SharePoint Online 站点,一打开就是现代体验,看起来很好看,但是自己的功能,需要在传统体验下做起来更方便,所以需要切换回传统体验。 现代体验模式,如下图: 单个列表修改为传......
2021-06-25 404 SharePoint启用传统体验模式