Код: Выделить всё
Microsoft.Graph.Models.ODataErrors.ODataError: Resource 'memberOf' does not exist or one of its queried reference-property objects are not present.
at Microsoft.Kiota.Http.HttpClientLibrary.HttpClientRequestAdapter.ThrowIfFailedResponseAsync(HttpResponseMessage response, Dictionary`2 errorMapping, Activity activityForAttributes, CancellationToken cancellationToken)
at Microsoft.Kiota.Http.HttpClientLibrary.HttpClientRequestAdapter.SendAsync[ModelType](RequestInformation requestInfo, ParsableFactory`1 factory, Dictionary`2 errorMapping, CancellationToken cancellationToken)
at Microsoft.Kiota.Http.HttpClientLibrary.HttpClientRequestAdapter.SendAsync[ModelType](RequestInformation requestInfo, ParsableFactory`1 factory, Dictionary`2 errorMapping, CancellationToken cancellationToken)
at Microsoft.Graph.Users.Item.MemberOf.MemberOfRequestBuilder.GetAsync(Action`1 requestConfiguration, CancellationToken cancellationToken)
at profile.usafa.org.Controllers.APIController.AzureGroups(String objectId)
at lambda_method189(Closure , Object )
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.AwaitableObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Routing.EndpointMiddleware.g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at profile.usafa.org.Startup.ProtectStaticFilesMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Session.SessionMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Session.SessionMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)
< /code>
Вот код, который я использую для выполнения вызова: < /p>
var graphClient = new GraphServiceClient(clientSecretCredential);
var tempresult = await graphClient.Users[objectId].GetAsync();
DirectoryObjectCollectionResponse result = null;
result = await graphClient.Users[objectId].MemberOf
.GetAsync().;
проверяется с помощью AI на этом, и это дает мне следующее, чтобы проверить: < /p>
[*] Проверьте разрешения: убедитесь, что в вашем приложении есть необходимые разрешения для чтения член собственности. Вам нужен user.read.all или directory.read.all. Все разрешения в регистрации приложения Azure Ad. оба разрешения устанавливаются правильно
[*] Используйте правильную конечную точку API: убедитесь, что вы используете правильную конечную точку API. Свойство MemberOf должно быть доступно через конечную точку/{id}/memberOf. вызов абстрагирован, и я не уверен, как я мог бы проверить это
Обработка пустых результатов: убедитесь, что вы обрабатываете случаи, когда пользователь не может быть членом любые группы. ошибка выводится во время вызова, а не после возвращения результатов. Однако я не могу проверить его против моего каталога B2C, поскольку он не является основным каталогом, и я не смог найти способ переключения каталогов, которые сработали. Я смог принять участие в пользователе нашего основного каталога. Кодовая база на этой неделе. Первоначально я был в версии 4 Microsoft.graph, когда начал получать эту ошибку, но перешел к последней версии, чтобы попытаться решить проблему. Такая же ошибка произошла в обеих версиях.
Спасибо за любые полезные мысли, которые вы можете предоставить.
Подробнее здесь: https://stackoverflow.com/questions/793 ... l-usersobj
Мобильная версия