使用 Microsoft graph 获取 OneDrive 中的所有文件夹 API
Fetch all the folders in OneDrive using Microsoft graph API
我正在尝试使用图表 api 获取 Onedrive 中的所有文件夹(不是文件)。我正在寻找类似于以下查询的查询:
var folders=await client.Me.Drive.Root.Children.Request().GetAsync();
以上查询同时获取文件和文件夹,而我只查找文件夹。
提前致谢。
为了仅获取组中的文件夹,每个 drivenItem object 中都有一个名为 'Folder' 的 属性,可用于检测该特定 drivenItem 对象是文件还是文件夹。如果该对象是 Folder,则其中的值不会为空。如果它是一个文件,那么文件夹 属性 肯定是空的。
public static async Task<IEnumerable<DriveItem>> GetOnlyFolders()
{
var folders = await graphClient.Me.Drive.Root.Children
.Request()
.GetAsync();
return folders.CurrentPage;
}
static void OnlyFolders()
{
var result = GraphHelper.GetOnlyFolders().Result;
foreach (var item in result)
{
if(item.Folder != null)
{
Console.WriteLine(item.Name);
}
}
}
在我的应用程序中对其进行了测试,结果如下。
我的 OneDrive:-
Please click this link to see my one drive
应用代码后我的申请:-
Please click this link to view the folders
我正在尝试使用图表 api 获取 Onedrive 中的所有文件夹(不是文件)。我正在寻找类似于以下查询的查询:
var folders=await client.Me.Drive.Root.Children.Request().GetAsync();
以上查询同时获取文件和文件夹,而我只查找文件夹。
提前致谢。
为了仅获取组中的文件夹,每个 drivenItem object 中都有一个名为 'Folder' 的 属性,可用于检测该特定 drivenItem 对象是文件还是文件夹。如果该对象是 Folder,则其中的值不会为空。如果它是一个文件,那么文件夹 属性 肯定是空的。
public static async Task<IEnumerable<DriveItem>> GetOnlyFolders()
{
var folders = await graphClient.Me.Drive.Root.Children
.Request()
.GetAsync();
return folders.CurrentPage;
}
static void OnlyFolders()
{
var result = GraphHelper.GetOnlyFolders().Result;
foreach (var item in result)
{
if(item.Folder != null)
{
Console.WriteLine(item.Name);
}
}
}
在我的应用程序中对其进行了测试,结果如下。
我的 OneDrive:- Please click this link to see my one drive
应用代码后我的申请:- Please click this link to view the folders