.net - 从 SharePoint Online 下载某些用户的文件
问题描述
我的公司有商业账户和域名,\<company>.sharepoint.com
所以每个员工都有自己的 OneDrive 空间,比如
\<company>-my.sharepoint.com
我们有特殊的账户来管理我们存储在自己的 onedrive 上的文档,比如
存储在员工 onedrive 上的文件
我尝试了 SharePoint CSOM、Microsoft Graph API 和 SharePointAPI。使用其中任何一个,我都可以获得与文件相关的数据,例如名称、上次更改日期等。但是当我尝试使用以下内容下载它时:
var file = clientContext.Web.GetFileByUrl(<url to file>);
var fileStream = file.OpenBinaryStream();
clientContext.ExecuteQuery();
我有例外
文件未找到
即使使用https://developer.microsoft.com/en-us/graph/graph-explorer我也无法访问我的文件
也使用 SharePoint CSOM 我可以从 <company>.sharepoint.com/Shared%20Documents/Forms/AllItems.aspx 下载文件
有没有办法直接从员工文档库下载文件,或者它是被禁止的,我应该将所有文件移动到 SharePoint“通信站点”文档?
解决方案
我通过使用本教程中的 Azure Active Directory 应用程序解决了这个问题 https://docs.microsoft.com/en-us/graph/auth-v2-service
推荐阅读
- android - android studio升级3.2.1发布应用报错:com.android.build.gradle.internal.transforms.ProGuardTransform.transform(ProGuardTransform.java:207
- image-segmentation - NiftyNet 找不到用于多类分割的多个标签
- android - 当应用程序在后台时以编程方式呼叫号码
- php - 使用库转换日期
- expression - Spotfire Expression - 是否有 contains 函数或类似函数?
- azure - 为什么我的 Azure V2 时间函数会因 newtonsoft 参考而崩溃?
- listview - Listview刷新滚动到错误的位置
- python - PyQt5。在没有循环的情况下读取表列或行的值
- java - Spring config服务器安全加密和解密不起作用
- socialengine - 如何在彼此之间更改 UPDATES 和 INFO 文件夹(彼此之间更改它们的位置)?