首页 > 解决方案 > 检查 Graph API 文件夹是否存在

问题描述

我正在使用 Microsoft Graph API,我正在创建一个文件夹,如下所示:

var driveItem = new DriveItem
{
    Name = Customer_Name.Text + Customer_LName.Text,
    Folder = new Folder
    {
    },
    AdditionalData = new Dictionary<string, object>()
    {
        {"@microsoft.graph.conflictBehavior","rename"}
    }
};

var newFolder = await App.GraphClient
  .Me
  .Drive
  .Items["id-of-folder-I-am-putting-this-into"]
  .Children
  .Request()
  .AddAsync(driveItem);

我的问题是如何检查该文件夹是否存在以及它是否获得了该文件夹的 ID?

标签: c#microsoft-graph-api

解决方案


要获取具有文件夹名称的文件夹:

调用图 api Reference1 Reference2/me/drive/items/{item-id}:/path/to/file

IE/drive/items/id-of-folder-I-am-putting-this-into:/{folderName}

  • 如果文件夹存在,它会返回一个driveItem响应,它的 id 为

  • 如果文件夹不存在,则返回 404 (NotFound)

现在,在创建文件夹时,如果文件夹已经存在,为了使调用失败,请尝试按如下方式设置附加数据参考

    AdditionalData = new Dictionary<string, object>
    {
        { "@microsoft.graph.conflictBehavior", "fail" }
    }
  • 如果文件夹存在,这将返回 409 冲突

推荐阅读