Azure.DigitalTwins.Core 1.4.0
预留前缀
dotnet add package Azure.DigitalTwins.Core --version 1.4.0
NuGet\Install-Package Azure.DigitalTwins.Core -Version 1.4.0
<PackageReference Include="Azure.DigitalTwins.Core" Version="1.4.0" />
paket add Azure.DigitalTwins.Core --version 1.4.0
#r "nuget: Azure.DigitalTwins.Core, 1.4.0"
// Install Azure.DigitalTwins.Core as a Cake Addin #addin nuget:?package=Azure.DigitalTwins.Core&version=1.4.0 // Install Azure.DigitalTwins.Core as a Cake Tool #tool nuget:?package=Azure.DigitalTwins.Core&version=1.4.0
Azure IoT Digital Twins 的 .NET 客户端库
此库提供对 Azure Digital Twins 服务的访问,用于管理双胞胎、模型、关系等。
入门
完整的 Microsoft Azure SDK 可以从 Microsoft Azure 下载页面 下载,其中包括支持构建部署包、集成到工具、丰富的命令行工具等。
为了获得最佳的开发体验,开发人员应使用官方的 Microsoft NuGet 软件包库。NuGet 软件包会定期更新,以包含新的功能和支持热补丁。
安装软件包
使用 NuGet 安装 Azure Digital Twins 客户端库 (.NET)
dotnet add package Azure.DigitalTwins.Core
在 nuget.org 查看软件包详情。
先决条件
- Microsoft Azure 订阅
- 要调用 Microsoft Azure 服务,创建一个 Azure 订阅。
- Azure 数字孪生实例
- 为了使用 Azure 数字孪生 SDK,首先需要使用以下任一方式创建一个数字孪生实例
- 使用 Azure 门户
- 使用 Azure 管理API
- 使用 Azure CLI
- 您需要安装 azure cli 和 Azure IoT 扩展 以用于 Azure CLI。
- 有关创建和交互您的数字孪生实例的更多信息,请参阅 IoT CLI 文档。
- 为了使用 Azure 数字孪生 SDK,首先需要使用以下任一方式创建一个数字孪生实例
客户端认证
要与 Azure 数字孪生服务交互,您需要创建一个 TokenCredential 类 的实例,并将其传递给您的 DigitalTwinsClient 构造函数。
关键概念
Azure 数字孪生预览是一个 Azure IoT 服务,可以创建物理环境的全面模型。它可以创建空间智能图来建模人员、空间和设备之间的关系和交互。
要了解更多有关 Azure 数字孪生的信息,请访问 Azure 数字孪生文档
线程安全
我们保证所有客户端实例方法都是线程安全的且相互独立 (指南)。这确保了重用客户端实例的建议始终是安全的,即使在多线程的情况下也是如此。
其他概念
客户端选项 | 访问响应 | 长时间运行的操作 | 处理失败 | 诊断 | 模拟 | 客户端生命周期
示例
您可以通过 数字孪生示例 熟悉不同的 API。
源代码文件夹结构
/src
DigitalTwinsClient 公共客户端,DigitalTwinsClient
,以及可以发送到数字孪生服务的附加配置选项 DigitalTwinsClientOptions
。
/src/Generated
使用 autorest 根据配置文件中定义的 swagger 文件生成的代码。
要重新生成代码,运行 PowerShell 脚本 generate.ps1。
每当客户端库代码更新时,需要运行以下脚本
- Export-AdtApis.ps1,它将更新 API 表面积档。
- Update-Snippets.ps1,该脚本将更新README文件和客户端文档注释中所有的代码片段。
/src/Customized
编写的自定义代码用于覆盖以下自动生成代码的行为
- 重命名一些生成的类型,例如:GetModelsOptions
- 将一些生成的类型声明为internal,而不是Autorest默认的public。
- 将一些方法声明为接受输入参数为strings而不是objects。
- 将一些方法声明为返回响应为strings而不是objects。
/src/Models
模型类,适用于与数字孪生客户端操作一起使用。
/src/Properties
运行单元测试所需的程序集属性。
/src/Serialization
提供的序列化助手,帮助在数字孪生服务内串行化和反串行化常用类型。
问题排查
所有服务操作在服务报告失败时会抛出RequestFailedException,并带有有用的错误代码和其他信息。
例如,在创建模型之前,使用GetModelAsync
操作来检查模型是否存在,只需在指定了特定HttpStatusCode时捕获。
try
{
Response<ModelData> desiredModel = await DigitalTwinsClient.GetModelAsync(desiredModelId);
}
catch (RequestFailedException ex) when (ex.Status == (int)HttpStatusCode.NotFound)
{
// Model does not exist, so create it.
}
下一步
查看我们的代码示例中的实现示例。
贡献
本项目欢迎贡献和建议。大多数贡献需要你同意一项贡献者许可协议(CLA),声明你有权,并且实际上确实授予我们使用你的贡献的权利。有关详细信息,请访问https://cla.microsoft.com.
当你提交一个pull request时,一个CLA机器人会自动确定你是否需要提供CLA,并相应地标记PR(例如,标记,注释)。只需遵循机器人提供的说明。你只需在整个使用我们的CLA的所有仓库中做一次即可。
本项目已经采用了Microsoft Open Source Code of Conduct。更多信息见Code of Conduct FAQ,或联系[email protected]以获得任何额外的问题或评论。
产品 | 版本 兼容的和额外的计算目标框架版本。 |
---|---|
.NET | net5.0 已计算。 net5.0-windows 已计算。 net6.0 已计算。 net6.0-android 已计算。 net6.0-ios 已计算。 net6.0-maccatalyst 已计算。 net6.0-macos 已计算。 net6.0-tvos 已计算。 net6.0-windows 已计算。 net7.0 已计算。 net7.0-android 已计算。 net7.0-ios 已计算。 net7.0-maccatalyst 已计算。 net7.0-macos 已计算。 net7.0-tvos 已计算。 net7.0-windows 已计算。 net8.0 已计算。 net8.0-android 已计算。 net8.0-browser 已计算。 net8.0-ios 已计算。 net8.0-maccatalyst 已计算。 net8.0-macos 已计算。 net8.0-tvos 已计算。 net8.0-windows 已计算。 |
.NET Core | netcoreapp2.0 已计算。 netcoreapp2.1 已计算。 netcoreapp2.2 已计算。 netcoreapp3.0 已计算。 netcoreapp3.1 已计算。 |
.NET Standard | netstandard2.0 兼容。 netstandard2.1 已计算。 |
.NET Framework | net461 已计算。 net462 已计算。 net463 已计算。 net47 已计算。 net471 已计算。 net472 已计算。 net48 已计算。 net481 已计算。 |
MonoAndroid | monoandroid 已计算。 |
MonoMac | monomac 已计算。 |
MonoTouch | monotouch 已计算。 |
Tizen | tizen40 已计算。 tizen60 已计算。 |
Xamarin.iOS | xamarinios 已计算。 |
Xamarin.Mac | xamarinmac 已计算。 |
Xamarin.TVOS | xamarintvos 已计算。 |
Xamarin.WatchOS | xamarinwatchos 已计算。 |
-
.NETStandard 2.0
- Azure.Core (>= 1.25.0)
- System.Text.Json (>= 4.7.2)
NuGet 包 (10)
显示依赖于 Azure.DigitalTwins.Core 的前 5 个 NuGet 包
包 | 下载 |
---|---|
Elastacloud.DigiTwin.SDK
包描述 |
|
Microsoft.DigitalWorkplace.DigitalTwins.QueryBuilder Azure Digital Twins 的 C# 查询构建器,基于 Azure Digital Twins SDK。 |
|
Kae.DomainModel.Csharp.Framework.Adaptor.ExternalStorage.AzureDigitalTwins
Azure Digital Twins 的领域模型 C# 代码生成库(作为外部存储) |
|
Microsoft.SmartPlaces.Facilities.IngestionManager 此库从基于 DTDL 的图中注入数据,并将其转换为插入到另一个基于 DTDL 的图中。 |
|
Microsoft.DigitalWorkplace.DigitalTwins.Models.Generator 将DTDL模型转换为C# POCO类的模型生成器。 |
GitHub仓库 (3)
显示依赖Azure.DigitalTwins.Core的GitHub最受欢迎的前3个仓库
仓库 | 星标 |
---|---|
Xabaril/AspNetCore.Diagnostics.HealthChecks
ASP.NET Core诊断包的企业级健康检查
|
|
Azure-Samples/streaming-at-scale
如何在Azure中实现大规模流式处理解决方案
|
|
digitaltwinconsortium/ManufacturingOntologies
制造本体的参考解决方案。
|
版本 | 下载 | 最后更新 |
---|---|---|
1.4.0 | 645,842 | 7/9/2022 |
1.4.0-beta.1 | 3,485 | 3/25/2022 |
1.3.0-beta.2 | 2,421 | 8/6/2021 |
1.3.0-beta.1 | 212 | 8/4/2021 |
1.2.2 | 335,752 | 4/12/2021 |
1.2.1 | 12,565 | 2/4/2021 |
1.2.0 | 98,689 | 11/16/2020 |
1.0.1 | 2,457 | 11/5/2020 |
1.0.0 | 3,383 | 10/30/2020 |
1.0.0-preview.3 | 16,749 | 7/13/2020 |
1.0.0-preview.2 | 7,459 | 6/8/2020 |