带有服务/守护程序应用程序的 Microsoft Graph CSharp SDK 和 OneDrive for Business - 配额方面返回 null配额、应用程序、方面、程序

由网友(捂风挽笑)分享简介:我正在针对 OneDrive for Business 的 Microsoft Graph CSharp SDK 进行编码,并且我正在尝试提取特定 User 的数据并请求返回配额信息.I am coding against Microsoft Graph CSharp SDK for OneDrive for Bus...

我正在针对 OneDrive for BusinessMicrosoft Graph CSharp SDK 进行编码,并且我正在尝试提取特定 User 的数据并请求返回配额信息.

I am coding against Microsoft Graph CSharp SDK for OneDrive for Business and I am trying to pull back data on a specific User and request back Quota information.

我的要求:

var user = await graphServiceClient.Users["test@test.onmicrosoft.com"].Request().GetAsync();
var drive = await graphServiceClient.Drives["test@test.onmicrosoft.com"].Request().GetAsync();
var quotaTotal = drive.Quota.Used;
var displayName = user.DisplayName;
var driveType = drive.DriveType;
var driveId = drive.Id;

问题——返回的数据都是null.Microsoft Graph SDK 是否支持为 OneDrive for Business 帐户拉回 Quota 方面?

The problem - the data that is returned is all null. Does the Microsoft Graph SDK have support to pull back Quota facet for OneDrive for Bussiness accounts?

更新

我还提供 client_idclient_secrettenant_name 以在应用程序级权限上进行身份验证.

I am also providing the client_id, client_secret, and tenant_nameto authenticate on an application-level permission.

更新

drive 添加了屏幕截图,因为它返回所有 null.

Added a screenshot for drive since it returns all null.

推荐答案

感谢您报告问题.如果令牌中有 Files.Read.All 或 Files.ReadWrite.All 范围,则确实不会为 App Only 调用返回配额和所有者信息.我已经解决了这个问题,这个修复应该很快就会推广到生产环境.不过,作为一种解决方法,您可以为您的应用使用 Sites.FullControl.All 范围,这应该会返回配额和所有者信息.

Thanks for reporting the issue. The quota and owner information was indeed not being returned for App Only calls if you had Files.Read.All or Files.ReadWrite.All scope in the token. I have fixed the issue and the fix should roll out to Production soon. As a workaround though, you can use Sites.FullControl.All scope for your app and that should return the quota and owner information.

阅读全文

相关推荐

最新文章