Microsoft Graph REST API indicates that when updating the properties of an existing DriveItem, only the properties that are to be updated should be passed in the method. This does not seem to work in the C# SDK v1.13.
Using the .Net SDK, the IDriveItemRequest.UpdateAsync() method calls for a DriveItem parameter. I am populating a new DriveItem object with only the properties I want to change: Description, for example, since the IDriveItemRequest has been explicitly created for the DriveItem I wish to update.
The UpdateAsync() call with my partial/delta DriveItem returns the original DriveItem, unchanged. (I have verified that I have Read/Write access to the file.)
string myID = existingItem.Id;
DriveItem updater = new DriveItem();
updater.Description = "Changed Description";
DriveItem updatED = await graphClient.Me.Drive.Items[myID].Request().UpdateAsync(updater);
I would expect the returned DriveItem object ("updatED" in above code example) would be my existingItem DriveItem, updated with the Description = "Changed Description". Further, the DriveItem's LastModifiedDate would likely be "Now".
The call returns the original DriveItem - not updated.
So what is the .Net UpdateAsync method looking for as a parameter? The REST SDK pages indicate it should only be what is being explicitly updated.
Thanks.