首页 > 解决方案 > Microsoft Project Online CSOM 身份验证工作但无法加载项目

问题描述

我将我的应用程序切换到 .net core 并开始使用新的 .net core CSOM for sharepoint。我遵循了将现代身份验证与 CSOM 一起用于 .NET Standard文档,但我仍然无法使用“ProjectContext”查询项目列表。身份验证似乎可以正常工作,我得到了一个令牌,但是当我尝试“加载”context.Projects时它没有加载任何东西:

using var context = new CSOMDemo.AuthenticationManager().GetContext(new Uri($"https://{company}.sharepoint.com/sites/pwa"), email, password);
context.Load(context.Projects);
context.ExecuteQuery();

var project = context.Projects.First(); // crash, Sequence contains no elements

如果我做同样的事情,但使用 .Net 框架SharePointOnlineCredentials,相同的 url、用户名和密码可以工作。

azure 应用程序中的权限似乎配置正确,因为如果我删除SharePoint> AllSites.FullControl然后尝试运行相同的代码,我会得到一个ServerUnauthorizedAccessExceptionExecuteQuery

我在方法中更改了ClientContextfor a 。ProjectContextAuthentication.GetContext

这是一个错误还是我错过了什么?

谢谢,

环境细节(开发和目标环境

标签: azure.net-coresharepoint-onlinecsom

解决方案


推荐阅读