我正在尝试更新驱动器项的父引用,其中驱动器项的名称或包含特殊字符的新父路径(%25例如),并且新父项和项位于同一组和驱动器中。当新的父路径包含这些字符时,我收到无效请求异常。当更新驱动器项目的名称包含这些字符时,我会收到“未找到项目”异常,但在25从项目名称中删除后,该项目被移动到目的地。除了这两种情况外,我的代码工作正常。这是我尝试做的:destinationPath = Uri.EscapeDataString(destinationPath);var destination = await client .Groups[groupId] .Drives[driveId] .Root .ItemWithPath(destinationPath) .Request() .GetAsync();DriveItem newItem = new DriveItem { ParentReference = new ItemReference { Id = destination.Id }};sourcePath = Uri.EscapeDataString(sourcePath);var movedItem = await client .Groups[groupId] .Drives[driveId] .Root .ItemWithPath(sourcePath) .Request() .GetAsync();var result = await client .Groups[groupId] .Drives[driveId] .Items[movedItem.Id] .Request() .UpdateAsync(newItem);
1 回答
动漫人物
TA贡献1815条经验 获得超10个赞
OneDrive 不支持%
(或其他几个特殊字符)在文件名或路径名中。这与 Microsoft Graph 无关,它们不受 OneDrive 本身(或许多与此相关的文件系统)的支持。
从OneDrive、OneDrive for Business 和 SharePoint 中的无效文件名和文件类型:
OneDrive、Office 365 上的 OneDrive for Business 和 SharePoint Online 中的文件和文件夹名称中不允许使用的字符:
" * : < > ? / \ |
SharePoint Server 2013 上的 OneDrive for Business 文件和文件夹名称中不允许使用的字符:
~ " # % & * : < > ? / \ { | }.
- 1 回答
- 0 关注
- 157 浏览
添加回答
举报
0/150
提交
取消