Dynamics CRM 365 Web API 入门

news/2025/3/22 10:05:24/文章来源:https://www.cnblogs.com/YuYangBlogs/p/18230622

创建 Visual Studio 项目

  1. 启动 Visual Studio 2022,然后选择“创建新项目”。
  2. 创建新的控制台应用项目。
  3. 通过设置“位置”和“项目名称”来配置项目。
  4. 通过选择“.NET 8.0(长期支持)”和“不使用顶级语句”来配置项目。然后单击“创建”。

编辑Program.cs

按照以下后续步骤为主程序添加代码。

  1. Program.cs替换为以下代码。

    using System.Net;
    using System.Text.Json;namespace WebAPIQuickStart
    {internal class Program{static async Task Main(){string userName = "";string password = "";string domainName = "";string webAPIBaseAddress = "https://<env-name>/D365/api/data/v9.1/";//修改环境地址HttpClient client = GetNewHttpClient(userName, password, domainName, webAPIBaseAddress);#region Web API callvar response = await client.GetAsync("WhoAmI");if (response.IsSuccessStatusCode){Guid userId = new();string jsonContent = await response.Content.ReadAsStringAsync();// Using System.Text.Json//using (JsonDocument doc = JsonDocument.Parse(jsonContent))//{//    JsonElement root = doc.RootElement;//    JsonElement userIdElement = root.GetProperty("UserId");//    userId = userIdElement.GetGuid();//}// Alternate code, but requires that the WhoAmIResponse class be defined (see below).WhoAmIResponse whoAmIresponse = JsonSerializer.Deserialize<WhoAmIResponse>(jsonContent);userId = whoAmIresponse.UserId;Console.WriteLine($"Your user ID is {userId}");}else{Console.WriteLine("Web API call failed");Console.WriteLine("Reason: " + response.ReasonPhrase);}#endregion Web API callConsole.ReadKey();}private static HttpClient GetNewHttpClient(string userName, string password, string domainName, string webAPIBaseAddress){HttpClient client = new HttpClient(new HttpClientHandler() { Credentials = new NetworkCredential(userName, password, domainName) });client.BaseAddress = new Uri(webAPIBaseAddress);client.Timeout = new TimeSpan(0, 2, 0);return client;}}/// <summary>/// WhoAmIResponse class definition /// </summary>/// <remarks>To be used for JSON deserialization.</remarks>public class WhoAmIResponse{public Guid BusinessUnitId { get; set; }public Guid UserId { get; set; }public Guid OrganizationId { get; set; }}
    }
    

运行程序

查看控制台应用程序窗口。输出应如下所示:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/719818.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Web 页面性能衡量指标-以用户为中心的效果指标

以用户为中心的性能指标是理解和改进站点体验的关键点 一、以用户为中心的性能指标 1. 指标是用来干啥的? 指标是用来衡量性能和用户体验的 2. 指标类型 感知加载速度:网页可以多快地加载网页中的所有视觉元素并将其渲染到屏幕上 加载响应速度:页面加载和执行组件快速响应用…

Stable diffusion采样器详解

在我们使用SD web UI的过程中,有很多采样器可以选择,那么什么是采样器?它们是如何工作的?它们之间有什么区别?你应该使用哪一个?这篇文章将会给你想要的答案。在我们使用SD web UI的过程中,有很多采样器可以选择,那么什么是采样器?它们是如何工作的?它们之间有什么区…

Kingskit 物联网平台

在数字化浪潮的推动下,物联网(IoT)正在迅速改变我们的生活和工作方式。ThingsKit,一个领先的物联网平台,致力于通过其创新的技术和服务,为用户提供一个全面、灵活且易于使用的解决方案。 核心特点 设备连接与管理 ThingsKit提供了一个强大的设备管理功能,支持多种协议,…

CentOS-7.9 安装rabbitmq3.9.11 ,erlang-23.3.4.11

下载所需rpm包 wget https://github.com/rabbitmq/erlang-rpm/releases/download/v23.3.4.11/erlang-23.3.4.11-1.el7.x86_64.rpmwget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.9.11/rabbitmq-server-3.9.11-1.el7.noarch.rpm安装 Erlang sudo rpm -…

探索sqlmap在WebSocket安全测试中的应用

探索sqlmap在WebSocket安全测试中的应用 WebSocket与HTTP的区别 WebSocket,对于初次接触的人来说,往往会引发一个疑问:既然我们已经有了广泛使用的HTTP协议,为何还需要引入另一种协议?WebSocket又能为我们带来哪些实质性的好处呢? 这背后的答案在于HTTP协议的一个关键限制…

C#开源实用的工具类库,集成超过1000多种扩展方法

前言 今天大姚给大家分享一个C#开源(MIT License)、免费、实用且强大的工具类库,集成超过1000多种扩展方法增强 .NET Framework 和 .NET Core的使用效率:Z.ExtensionMethods。 直接项目引入类库使用 在你的对应项目中NuGet包管理器中搜索:Z.ExtensionMethods安装即可使用。…

Windos bat批处理脚本,判断是终端命令行运行,还是双击运行

前言全局说明判断是终端命令行运行,还是双击运行一、说明二、文件名:t_echo.bat @echo offecho %CMDCMDLINE% | find "/c" >nul if %errorlevel% equ 0 (echo.echo [ INFO ] 脚本 %~nx0 是双击运行echo.pause ) else (echo.echo [ INFO ] 脚本 %~nx0 在命令行下…

kali简单安装docker和docker-compose

kali简单安装docker和docker-compose 更新kali安装docker sudo apt-get install docker.io安装docker-compose sudo apt-get install docker-compose检查docker和docker-compose sudo docker -v sudo docker-compose -v Pilot-Web靶场安装测试 开启容器 sudo sh init.sh -up -i…

Origin2024如何绘制3D彩色饼图?

饼图是科研中经常用到的图表之一,当我们需要展示部分占整体的比例时,相信很多人都会想到饼图,可以非常直观地体现各部分的占比,之前给大家分享了Origin绘制2D饼图,本期给大家分享绘制3D饼图的操作方法:操作步骤: 1、打开Origin2024软件,然后在Book1中输入如下示例数据,…

在线加密/解密工具

在线文本加密、解密,使用CryptoJS对文本进行AES, TripleDES, Rabbit, RC4, DES加解密。在线AES、DES加密/解密工具

【Socket】解决TCP粘包问题

TCP粘包是指在使用TCP协议进行数据传输时,发送方连续发送的多个数据包在接收方收到时被黏合成一个大的数据包。这种现象可能会导致接收方无法正确解析数据,从而影响应用程序的正常运行。一、介绍 TCP一种面向连接的、可靠的、基于字节流的传输层协议。 三次握手:客户端发送服…

省钱攻略:阿里云99元服务器续费到2027年方法

阿里云99元服务器续费到2027年方法阿里云99元服务器新老用户均可以买!!! 你没看错,老用户可以买!2核2G3M固定带宽,不限流量!! 并且续费不涨价,原价99元即可续费,一直可以续费到2027年,相当于396元买4年 99元服务器 (买4年396元) 新老用户同享 云服务Q 器活动入口: 》》》传…