horacioj horacioj - 25 days ago 12
C# Question

Getting Microsoft Graph Drive items by path using the .NET SDK

As it is documented, using the Microsoft Graph REST API you can (among other options) get an item by Id or Path. This works fine, as expected:

GET /me/drive/items/{item-id}/children
GET /me/drive/root:/{item-path}:/children


Using the .NET SDK, I can get a folder by Id (i.e. the first case):

var items = await graphClient.Me.Drive.Items[myFolderId].Children.Request().GetAsync();


However, I couldn't find how (using the .NET SDK) to do the same, but specifying a path instead of an Id (i.e. the second case).

I don't want to find an Id of a path I already know, to create the request for it. Right?

I'm afraid is not possible to do this using the current SDK (Microsoft Graph Client Library 1.1.1)?

Answer

This is how:

var items = await graphClient.Me.Drive.Root
                  .ItemWithPath("/this/is/the/path").Children.Request().GetAsync();

Use just the plain path. Don't include the ":", and don't include the "/drive/root:/".

it was obvious, now that I see it...

Comments