首页 文章

Microsoft Graph . 如何接收远程项目的所有者信息

提问于
浏览
0

我使用Microsoft Graph浏览用户OneDrive文件夹和文件(根据Microsoft Graph的DriveItem) . 当我收到DriveItem信息时,我尝试读取它的所有者:姓名和电子邮件 . 对于共享文件/文件夹我使用Item.Shared.Owner.User.Id,对于本地文件/文件夹我使用Item.CreatedBy.User.Id . 对于此Id,我可以阅读用户的信息:

GraphServiceClient.Users[Id].Request().GetAsync();

但是,我有远程DriveItem的问题 . 我知道,起初我应该通过RemoteItem structure中的数据读取远程项目信息 . 所以,起初我读了它:

var remote = await GraphServiceClient.Drives[Item.RemoteItem.ParentReference.DriveId].Items[Item.RemoteItem.Id].Request().GetAsync();

然后我尝试获取远程项目所有者:

GraphServiceClient.Users[remote.CreatedBy.User.Id].Request().GetAsync();

但我收到了登录用户信息而不是远程用户!好像我打电话:

GraphServiceClient.Me.Request().GetAsync();

为什么?以及如何接收OneDrive远程项目的所有者信息?

1 回答

  • 0

    看起来像 GraphServiceClient.Users[RemoteOwnerId].Request().GetAsync() 根本不能用于接收有关远程 DriveItem 所有者的信息 . 并且所有信息都应该按要求返回: var remote = await GraphServiceClient.Drives[RemoteDriveId].Items[RemoteItemId].Request().GetAsync();

    但是,Microsoft Graph v1.0 返回空 remote.Shared.Owner.User . 只有Microsoft Graph beta 返回此结构,填充 displayName !错误?

    下一个问题:如何接收远程项目所有者的电子邮件和照片?

相关问题