如何在 MS Graph 中预览共享文件?

Ran*_*a N 1 c# microsoft-graph-sdks microsoft-graph-api

我正在使用 MS Graph 客户端,但在预览共享项目时遇到了麻烦。

 ItemPreviewInfo preview = await graphClient.Me.Drive.Items[id].Preview().Request().PostAsync(); 
Run Code Online (Sandbox Code Playgroud)

给出不存在此类文件的错误,因为它不在我的驱动器中,所以很明显。我知道我可能需要访问共享文件夹,但“raphClient.Me.Drive.SharedWithMe...”没有给出任何项目 ID 规范。

任何帮助,将不胜感激。先感谢您。

小智 5

您需要通过调用以下命令来获取共享云端硬盘项目:

DriveItem driveItem = await graphClient.Me.Drive.SharedWithMe().Request().GetAsync().FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

检索到共享云端硬盘项目后,您可以通过调用以下命令进行预览:

ItemPreviewInfo previewInfo = await client.Drives[sharedItem.RemoteItem.ParentReference.DriveId].Items[sharedItem.RemoteItem.Id].Preview().Request().PostAsync();
Run Code Online (Sandbox Code Playgroud)

由于共享项目来自不同的驱动器,因此您需要获取共享驱动器的RemoteItem-DriveId以及标识共享驱动器中的DriveItem的 RemoteItem-Id 。

这里解释一下