0

好的,这是场景......我在文档库中创建了一个子文件夹,当一个项目添加到文档库时,我想对文档进行一些处理,然后将项目移动到子文件夹,比如 MySubFolder . 为此,我将使用此声明

SPListItem folder = this.workflowProperties.List.Folders[];

但 Folders[] 集合将采用 int 索引或 guid。因为我是在工作流程中进行的,所以我不知道如何在此处获取文件夹的 guid。请注意,我不能在此处使用 url 来获取 GUID,因为相同的工作流程适用于许多文档库,并且我在所有文档库中都有 MySubFolder 子文件夹,因此我认为在这里提供 url 似乎有点俗气。

4

2 回答 2

0

我通过执行以下操作解决了它:

Guid folderId = Guid.Empty;
SPFolder spFolder = web.Folders[this.workflowProperties.List.Title].SubFolders["MySubFolder"];
folderId=spFolder.UniqueId;
于 2010-01-21T11:01:47.027 回答
0

我现在没有 Sharepoint,但你应该可以:

Guid folderId = Guid.Empty;
foreach (SPFolderCollection folder in YourList.Folders)
{
    if (folder.Name == "MySubFolder")
    {
        folderId = folder.UniqueId;
        break;
    }
}

或者,在您的事件处理程序中,构建您的文件夹 URL:

public override void ItemDeleting(SPItemEventProperties properties)
{
    Uri folderAddress = new Uri(properties.BeforeUrl, "MySubFolder");
    SPFolder folder = yourWeb.GetFolder(folderAddress.ToString());
}
于 2010-01-21T08:54:54.280 回答