首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

微软图形应用编程接口C# -如何在Sharepoint中更新"CreatedBy“或"ModifiedBy”?

在SharePoint中更新"CreatedBy"或"ModifiedBy"字段,可以使用微软图形应用编程接口(Graph API)和C#语言来实现。

首先,你需要使用Microsoft Graph API来访问和更新SharePoint中的数据。Graph API是一个全球性的微软云服务,用于访问和管理Office 365中的各种资源,包括SharePoint。

在C#中,你可以使用Microsoft Graph SDK来与Graph API进行交互。首先,你需要在你的项目中添加对Microsoft Graph SDK的引用。你可以在NuGet包管理器中搜索"Microsoft.Graph"并安装相应的包。

接下来,你需要通过OAuth2授权流程获取访问SharePoint的权限。你可以使用MSAL(Microsoft Authentication Library)来实现身份验证。以下是一个示例代码片段,展示了如何获取访问令牌(access token):

代码语言:txt
复制
using Microsoft.Identity.Client;

public static async Task<string> GetAccessTokenAsync()
{
    string clientId = "YOUR_CLIENT_ID";
    string clientSecret = "YOUR_CLIENT_SECRET";
    string tenantId = "YOUR_TENANT_ID";
    
    IConfidentialClientApplication app = ConfidentialClientApplicationBuilder
        .Create(clientId)
        .WithClientSecret(clientSecret)
        .WithAuthority($"https://login.microsoftonline.com/{tenantId}")
        .Build();

    string[] scopes = new string[] { "https://graph.microsoft.com/.default" };
    AuthenticationResult result = await app.AcquireTokenForClient(scopes)
        .ExecuteAsync();

    return result.AccessToken;
}

请确保替换示例代码中的"YOUR_CLIENT_ID"、"YOUR_CLIENT_SECRET"和"YOUR_TENANT_ID"为你自己的应用程序标识符、客户端密钥和租户标识符。

一旦你获取到了访问令牌,你可以使用Graph API来更新"CreatedBy"或"ModifiedBy"字段。以下是一个示例代码片段,展示了如何更新这些字段:

代码语言:txt
复制
using Microsoft.Graph;

public static async Task UpdateMetadataAsync()
{
    string siteId = "YOUR_SITE_ID";
    string itemId = "YOUR_ITEM_ID";

    string accessToken = await GetAccessTokenAsync();

    GraphServiceClient graphClient = new GraphServiceClient(
        new DelegateAuthenticationProvider(requestMessage =>
        {
            requestMessage.Headers.Authorization =
                new AuthenticationHeaderValue("Bearer", accessToken);
            return Task.CompletedTask;
        })
    );

    var siteDriveItem = await graphClient
        .Sites[siteId]
        .Drive
        .Items[itemId]
        .Request()
        .GetAsync();

    var createdByUserId = siteDriveItem.CreatedBy.User.Id;
    var modifiedByUserId = siteDriveItem.ModifiedBy.User.Id;

    // 更新"CreatedBy"字段
    var createdByUser = new User
    {
        Id = createdByUserId
    };

    var updateCreatedBy = new DriveItem
    {
        CreatedBy = createdByUser
    };

    await graphClient
        .Sites[siteId]
        .Drive
        .Items[itemId]
        .Request()
        .UpdateAsync(updateCreatedBy);

    // 更新"ModifiedBy"字段
    var modifiedByUser = new User
    {
        Id = modifiedByUserId
    };

    var updateModifiedBy = new DriveItem
    {
        ModifiedBy = modifiedByUser
    };

    await graphClient
        .Sites[siteId]
        .Drive
        .Items[itemId]
        .Request()
        .UpdateAsync(updateModifiedBy);
}

请确保替换示例代码中的"YOUR_SITE_ID"和"YOUR_ITEM_ID"为你要更新的站点和项的标识符。

在这个示例代码中,我们首先通过Graph API获取了指定站点和项的创建者和修改者的用户标识符。然后,我们分别创建了包含这些用户标识符的User对象,并将其分别赋给对应的字段。最后,我们通过Graph API将更新后的字段值更新到SharePoint中。

这只是一个示例,你可以根据自己的需求进行调整和扩展。如果你需要了解更多关于Microsoft Graph API的信息,你可以访问腾讯云的Microsoft Graph API文档

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Atlas元数据存储模型分析

要在Atlas存储新类型的元数据,需要了解类型系统组件的概念。 Atlas的 "类型" 定义了如何存储和访问特定类型的元数据对象。类型表示了所定义元数据对象的一个多个属性集合。...具有开发背景的用户可以将 "类型" 理解成面向对象的编程语言的 "类" 定义的关系数据库的 "表模式"。...下图给出了当前元数据项目里的部分元数据类型继承关系: 图中不难看出,一个元数据类型包含一个属性集合,这些属性可以是原生类型string等,也可以是其他的复合类型struct其他元数据类型,tencent_appgroup...__modifiedBy=更新者的用户名__modificationTimestamp=修改时间__version__type.options#会为每一个attribute生成下一行属性__type....${attrName}每个objectId类型的Attribute,需要创建更新对应的另一端顶点,然后更新两个顶点的边属性等信息对于每个Map类型的Attribute,若Map的valueType是primitive

4.2K30

.NET周刊【6月第1期 2024-06-02】

LUAgent侧重服务器端,能生成和上传升级更新文件,目前已开源。软件包括多个组成部分主窗体、上传窗体和FTP操作类,支持添加应用名称、版本号、生成更新文件和上传至FTP。源码可在CSDN下载。...的function calling如何在Semantic Kernel应用。...C#接口的显式实现与隐式实现及其相关应用案例 https://www.cnblogs.com/TonyCode/p/18223431 C#接口显式实现限制类直接调用方法,像“密封”类接口方法,增加调用成本.../lulight/p/18225557 本文讲述在.NET 8环境下,应用何在Linux系统容器读取SSL证书(X509),主要有两种方式。...文中还详细解释了PKCE的概念和作用,以及oidc-client.js停止维护带来的困扰和潜在解决方案,关闭PKCE认证直接取Localstorage的code_verifier值。

14610
  • Succinctly 中文系列教程(二) 20220109 更新

    一、你好,Objective-C 二、数据类型 三、属性 四、内存管理 五、方法 六、类别和扩展 七、协议 八、异常和错误 九、块 十、总结 Succinctly C# 面向对象编程教程 零、OOP...简介 一、OOP 的三大支柱 二、接口 三、SOLID 四、设计模式 五、一般责任分配软件模式原则(GRASP) 六、架构 七、其它范式 八、总结 Succinctly OWIN 教程 一、OWIN...三、与其他网络框架一起使用 Katana 四、构建定制中间件 五、Katana 和认证 六、附录 Succinctly PDF 教程 零、简介 一、概念概述 二、创建 PDF 三、文本操作符 四、图形操作符...Office 互操作 Succinctly Prism4 教程 零、简介 一、什么是微软 Prism 4?...2013 教程 一、SharePoint 2013 开发模式简介 二、准备开发环境 三、新应用模型架构概述 四、SharePoint 托管应用 五、提供者托管的应用 六、安全模型概述 七、客户端对象模型

    6K20

    Windows桌面程序开发

    没有哪一种方案能够独霸 Windows,使用比较多的编程语言是 C++、C#、Java。...WPF和Winform最大的区别在于WPF底层使用的DirectX,Winform底层使用的是GDI+,所以WPF的图形界面上更胜一筹 GDI+(Graphics Device Interface)图形设备接口...,它的主要任务是负责绘图程序之间的信息交换、处理,所有windows程序的图形输出 DirectX(Direct Extension)多媒体编程接口,加强3D图形和声音效果,有很多API组成。...这将使得开发者能够更灵活地将 UWP 中一些更现代化的接口引入到 WPF 和 Windows Forms 。...在容器化大行其道的今天,.NET Core 的模块化、轻量级以及它的灵活性使得它能很容易地部署到容器,容器可以部署到任何平台, 云上、Linux 和 Windows 上。

    10.8K10

    针对构架师的.NET 3.0介绍

    WCF可以和现有的投资互操作,并结合和扩展现存的微软分布式系统技术,:Enterprise Services、System.Messaging、Microsoft .NET Remoting、ASMX...WCF已经为你提供了一个首要的核心编程框架,以应付逐步增长的面向服务的开发。...WPF利用XAML让你无需成为图形设计师就能尽情地开发下一代界面。 我建议你去看一个WPF应用程序的演示,来理解我指的下一代用户界面是什么意思。...这个阅读器是一个基于WPF的应用程序,运行在Internet Explorer浏览器,就是指所谓的XBAP(可扩展浏览器应用程序)——这是一个用于代替浏览器的ActiveX功能的技术。...一个设计师可以使用Expression产品线和XAML来创建视图,而开发人员可以使用Visual Studio和VB.NETC#来编写代码。

    1.3K60

    12种最受欢迎​​的编程语言

    它还用于基于图形用户界面(GUI)的应用程序,Web浏览器,高级计算和图形,编译器,数据库软件,操作系统,企业软件解决方案和应用程序(高端CAD,CAM系统)。...C#微软设计和开发的C#(发音为C-sharp)是一种面向对象的编程语言。由.NET Framework支持的Microsoft应用程序需要通过C#实现。...在1亿个网站,超过16%的网站由ASP.NET框架提供支持,这也是为什么你需要学习C#的原因。考虑两个因素。首先,C#是由微软开发的在他们的平台上开发应用程序的。...因此,微软将确保C#在未来的时间内使用并更新。其次,C#通常是作为Unity Game引擎制作游戏时推荐的语言。...随着编程从DOS向基于Windows的编程转变,微软开发,部署和使用应用程序的方式将会压倒一切,而Visual Basic.NET将为构建这些解决方案奠定基础。

    2.1K70

    Windows 商店应用中使用 SharePoint REST API

    开发人员可以使用任何支持 REST Web 请求的技术(C#,javascript,java,oc 等等)以远程方式与 SharePoint 数据进行交互。...这也就意味着,开发人员可以使用 REST Web技术和标准开放数据协议(OData)语法从其 SharePoint 相关应用程序、解决方案和客户端应用程序执行 CRUD 操作。...而针对远程 Web 移动应用,必须先获得访问权限,才能使用 SharePoint 数据资源。      ...而文档内容的上传过程是:文件读取为 Stream,放入 POST 内容。文件还有其他很多操作方式,更新,签出,签入,删除等。      ...这样我们就把 SharePoint REST API 的构成和基本的使用方法介绍完了,希望对大家在 Windows 商店应用中使用 SharePoint REST API 有所帮助,谢谢。

    4.8K150

    .NET周刊【6月第2期 2024-06-09】

    介绍了字符Char及其在C#的表现形式,说明了Unicode字符集及其各种平面的特点。解释了常见字符编码方案UTF-8和UTF-16的区别。...系统架构包括版本检查、下载更新、解压缩与安装以及重启应用。文章详细介绍了在WinForms应用创建自动更新程序的步骤,包括解析命令行参数、关闭当前运行程序、下载更新包、解压更新包和重启新版本程序。...C#异步编程是怎么回事(番外) https://www.cnblogs.com/ggtc/p/18229724 本文通过示例演示多线程与异步编程。...作者选择了国产大模型通义千问作为基础,通过阿里云平台获取接口。游戏设计包括随机发牌、确定地主、轮流出牌等。主要技术点在于C#编程实现的出牌合法性检测,包括手牌检测、牌型判断和竞赛逻辑。...通过OpenJson属性,可以自定义实体类在JSON的映射方式,支持多层嵌套和集合。文章提供了实际代码示例,并指出该功能可用于webapi接口快速测试和其他应用场景。

    11310

    微软深夜再掀AI生产力革命,奥特曼登台「自曝」新模型!定制Copilot十亿打工人狂欢

    如今,Windows成为了构建AI应用的最佳平台。而这种影响,不啻于Win 32对图形用户界面的意义。...比如在下面这个demo,用西班牙语描述需求,Copilot就可以自动编写出代码,并为Azure上的部署提供建议。 GitHub产品副总裁表示:「使用自然语言编程将继续降低软件开发的门槛。...为了减少工作搜索和筛选内容的时间,微软开发了从SharePoint创建Copilot的功能。...举个例子,你想弄清如何在《我的世界》制作一把剑,却毫无头绪。 Copilot会从头教你:为了造一把剑,你需要先收集材料。按E键,就能打开自己的材料库了。...通过将Copilot集成到XBox,可以大幅提升游戏体验。 此外,微软还与Quest联手,将Copilot带进VR世界,并为Quest带来可扩展到3D空间的Windows应用程序。

    10710

    Microsoft Forms未授权获取他人邮箱信息的漏洞分析

    本文讲述了关于微软在线调查创建应用Microsoft forms的一个漏洞,通过其中的数据分享机制,作者可以藉机获取到参与调查用户的邮箱信息,漏洞最终收获了$2k的奖励。...OData的数据交互模型如下: 简单来说,OData元数据是系统(关系数据库的information_schema)的数据模型之一,对每一个元数据来说都具备相关的实体(类似于数据库的表)和属性(类似于数据库的列...当然除了select外,还可以使用其它的查询语法,JSONXML格式的数据导出format等。...这里,我可以请求微软官方的metadata接口来看看: http://forms.office.com/formapi/api/$metadata 在上述微软的XML元数据结构,并没有多少有意义的线索...也即服务端不允许我访问createdBy属性或是其他用户的表单邮箱信息。但我又想到了另外一种方法:”是否有另一个实体有createdBy属性?

    1.8K20

    【Qt开发者指南】:初识Qt(一)

    前言 在现代软件开发图形用户界面(GUI)在提升用户体验和操作便捷性上扮演着至关重要的角色。...开发者面临的选择多种多样,Qt作为其中一种流行的方案,不仅具有广泛的应用范围,还具有跨平台的优势,使其在商业化应用和个人开发均受到青睐。...C# (C sharp) Windows Forms:微软C# (.NET)量身定制的GUI开发体系,使开发者可以快速上手并构建Windows应用程序。...2.2 图形用户界面 图形用户界面(GUI)是指采用图形方式显示的计算机操作界面,是计算机与用户之间的对话接口。典型的GUI示例包括Android和iOS手机的图形用户界面。...2008年:奇趣科技被诺基亚公司收购,Qt成为诺基亚旗下的编程工具。 2012年:Qt被Digia公司收购。

    2000

    .NET周刊【9月第4期 2023-09-24】

    它支持22种语言,提供了许多实用功能,关闭不必要的Windows服务、停止Windows自动更新、卸载UWP应用、清理系统垃圾文件和浏览器配置文件、修复常见的注册表问题等。...文章指出,.NET的异步编程模型简化了应用程序的异步代码编写,对于增强I/O绑定方案的可伸缩性非常关键。...本文介绍了C#并发编程的Channel数据结构,通过两个实际案例展示了其使用方法和优势。...如何在.NET电子表格应用程序创建流程图 https://www.cnblogs.com/powertoolsteam/p/17711691.html 本文介绍了如何在.NET WinForms应用程序创建流程图...在.NET WinForms创建流程图的步骤包括设置项目、启用增强形状引擎、添加形状和文本到电子表格流程图、应用样式到形状、分组流程图形状,以及在应用程序中保存并显示流程图。

    20340

    SharePoint邮件通知服务的XSS漏洞

    近期,美国Target安全团队就在一次渗透测试过程,发现了微软在线服务产品SharePoint的一个XSS独特漏洞,无需任何用户交互行为,就可实现攻击利用,以下是Target团队的分享。...漏洞发现 在一次对基于SharePoint集成的应用程序渗透测试,我们偶然发现了该漏洞。...经过分析,我们发现,这种集成的SharePoint服务架构,客户端浏览器每隔一分钟就会向以下URL链接发起一次GET请求,去探测新邮件等消息,以便为用户进行实时信息更新。...,但却无法有效过滤掉一些 / 的危险符号。...不久之后,微软回复称漏洞已经修复,他们在其中调整了某个序列化程序使其能正确合理地编码转义敏感字符,能有效阻止XSS攻击在SharePoint应用通知服务的再次发生。

    1.4K20

    .NET6 平台系列3 .NET CLR 详解

    系列目录 【已更新最新开发文章,点击查看详细】 CLR 简介   运行时(Runtime Environment,简称Runtime ),是指那些支持在特定的平台上,用于运行特定编程语言编写的软件的库和程序集...汇编包括微软中间语言(Microsoft Intermediate Language,简称MSIL)代码、描述应用程序组件的元数据(类和类的布局描述),以及其他应用程序所需的组件。...(9)线程支持(Thread Support):提供了多线程编程的类和接口。 (10)COM列集器(COM Marshaler):处理与COM之间的配置。...例如:它可能加载一个桌面应用程序所需要的图形用户接口(GUI)控制的汇编等。...也就是说,.NET下的源程序(C#等)并不被编译成目标文件(.obj),而是直接生成可执行文件(.exe)动态链接库(.dll)。在.NET下,编译器不需要包含链接器。

    2.7K21

    PowerShell系列(一):PowerShell介绍和cmd命令行的区别

    ● 支持多种编程语言,包括 C#、VB.NET 和 PowerShell,可以快速编写和重用现有的代码。 ● 能够安全地执行命令和脚本,保障系统和数据的安全性。...● 支持远程管理,可以在本地远程计算机上执行命令和脚本。 ● 易于学习和使用,有多种教程和文档,可以帮助用户快速掌握使用技巧。...简单介绍如下: ● 广泛应用于Windows服务器、企业管理、自动化脚本开发等领域。 ● 可以帮助管理员进行系统配置、文件操作、程序管理、网络管理、安全设置等任务。...● 也可以用于管理Active Directory、Exchange Server、SQL Server、SharePoint等Microsoft家族产品。 ...● 还可以用于与外部Web服务、API接口进行交互,以便于开发实现自动化管理或者定制化的工作流程。

    1.8K121

    学习Unity必看的几本书推荐

    Unity开发应用广泛,覆盖行业包括8大热门行业的数十个开发岗位,VR/AR工程师、Unity3d开发、U3D客户端工程师等。所以也吸引了很多人开始学unity3d游戏开发。...介绍编程基础知识,变量、流程控制和面向对象编程;着重介绍初学者在编写C#程序时最常用的工具:阐述调试和错误处理;详细讲解集合、比较和转换,探讨C#语言的新增功能; 书籍目录: 第Ⅰ部分 C#语言 第...Store应用程序 第18章 部署桌面应用程序 第Ⅲ部分 Web编程 第19章 ASP.NET Web编程 第20章 部署Web应用程序 第Ⅳ部分 数据访问 第21章 文件系统数据 第22章 XML 第...读者评价: 身为一个开发者,一定要了解并发编程,才能称为高级程序员,这本书写的很好,很严谨细致,同时又很简单明了,没有多余的废话,介绍的都是c#编程的并发编程的干货,这本书不是很厚,便于阅读,没一页介绍的都是精华...本书不仅介绍了作者在工作积累的经验,还涵盖了实际应用的各类功能,很适合新手系统学习Unity,并全方面了解其运行原理。

    11.2K32

    学习Unity必看的几本书推荐

    Unity开发应用广泛,覆盖行业包括8大热门行业的数十个开发岗位,VR/AR工程师、Unity3d开发、U3D客户端工程师等。所以也吸引了很多人开始学unity3d游戏开发。.../Jon 介绍编程基础知识,变量、流程控制和面向对象编程;着重介绍初学者在编写C#程序时最常用的工具:阐述调试和错误处理;详细讲解集合、比较和转换,探讨C#语言的新增功能; 书籍目录: 第Ⅰ部分 C#...Store应用程序 第18章 部署桌面应用程序 第Ⅲ部分 Web编程 第19章 ASP.NET Web编程 第20章 部署Web应用程序 第Ⅳ部分 数据访问 第21章 文件系统数据 第22章 XML 第...读者评价: 身为一个开发者,一定要了解并发编程,才能称为高级程序员,这本书写的很好,很严谨细致,同时又很简单明了,没有多余的废话,介绍的都是c#编程的并发编程的干货,这本书不是很厚,便于阅读,没一页介绍的都是精华...本书不仅介绍了作者在工作积累的经验,还涵盖了实际应用的各类功能,很适合新手系统学习Unity,并全方面了解其运行原理。

    8.4K40
    领券