首先,一个简单的问题 - 有没有人有任何以编程方式重命名/移动 SharePoint 目录结构中的文件夹的经验?
的背景:
我继承了一些工作,并且正在修复其中的一些缺陷。在大多数情况下,事情进展顺利,但有一个问题让我把头撞在墙上。
该应用程序是一个带有 SharePoint 3 文档存储的 ASP.NET Web 应用程序 (C#)。应用程序在服务器上维护一个文件夹结构,文件夹的名称取决于应用程序内的数据并且可以(实时)更改。
当前的方法是使用 FrontPage 扩展来处理对 SharePoint 的一些请求,如下所述:http: //msdn.microsoft.com/en-us/library/ms443099.aspx
目前,如果文件夹不存在,将正确重命名文件夹,但如果确实存在,则会抛出错误(逻辑上如此)。在这种情况下,我们希望将文件夹的内容移动到现有文件夹中。从文档中我相信我们的方法应该可以工作......但它没有,所以我希望有一些可以轻松修改的东西。
编码:
const string renameOption = "findbacklinks";
const string putOption = "overwrite,createdir,migrationsemantics";
string method = "method=move+document%3a12.0.4518.1016&service_name=%2f&oldUrl={0}&newUrl={1}&url_list=[]&rename_option={2}&put_option={3}&docopy={4}";
method = String.Format(method, oldUrl, newUrl, renameOption, putOption, bool.FalseString.ToLower());
// then submit and handle the request
我曾尝试修改上述看跌期权,并认为上述“覆盖”选项会阻止我们收到的错误消息,其内容是:
method=move document:12.0.0.6219
status=131097
osstatus=0
msg=Cannot rename value to value: destination already exists.
我的首选方法是让上述实现工作,而不是使用其他技术完全重写(当然,如果上述内容存在根本缺陷,我理解可能需要重写)。
从我所做的研究来看,这似乎是一项艰巨的任务,并且任何方法都存在复杂性?
谢谢克里斯