你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
TwinsClient.ReplaceAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
ReplaceAsync(String, ClientTwin, Boolean, CancellationToken) |
汇报设备孪生体可变字段。 |
ReplaceAsync(String, String, ClientTwin, Boolean, CancellationToken) |
汇报模块孪生体可变字段。 |
ReplaceAsync(String, ClientTwin, Boolean, CancellationToken)
汇报设备孪生体可变字段。
public virtual System.Threading.Tasks.Task<Microsoft.Azure.Devices.ClientTwin> ReplaceAsync (string deviceId, Microsoft.Azure.Devices.ClientTwin newTwin, bool onlyIfUnchanged = false, System.Threading.CancellationToken cancellationToken = default);
abstract member ReplaceAsync : string * Microsoft.Azure.Devices.ClientTwin * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Devices.ClientTwin>
override this.ReplaceAsync : string * Microsoft.Azure.Devices.ClientTwin * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Devices.ClientTwin>
Public Overridable Function ReplaceAsync (deviceId As String, newTwin As ClientTwin, Optional onlyIfUnchanged As Boolean = false, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ClientTwin)
参数
- deviceId
- String
设备 ID。
- newTwin
- ClientTwin
要替换为的新孪生体对象。
- onlyIfUnchanged
- Boolean
如果为 false,则即使所提供的设备标识的 ETag 已过期,也会执行此操作。 如果为 true,则如果提供的设备标识的 ETag 已过期,则操作将引发 IotHubServiceExceptionPreconditionFailed 。 可以使用 检索 GetAsync(String, String, CancellationToken)最新的 ETag。
- cancellationToken
- CancellationToken
任务取消令牌。
返回
更新了孪生体。
例外
当提供的 deviceId
或 newTwin
为 null 时。
当提供的 deviceId
为空或空白时。
如果 IoT 中心使用不成功的状态代码响应了请求。 例如,如果提供的请求受到限制, IotHubServiceException 则会引发 with ThrottlingException 。 有关可能的错误情况的完整列表,请参阅 IotHubServiceErrorCode。
如果 HTTP 请求因网络连接、DNS 故障或服务器证书验证等基础问题而失败。
如果提供的 cancellationToken
已请求取消。
适用于
ReplaceAsync(String, String, ClientTwin, Boolean, CancellationToken)
汇报模块孪生体可变字段。
public virtual System.Threading.Tasks.Task<Microsoft.Azure.Devices.ClientTwin> ReplaceAsync (string deviceId, string moduleId, Microsoft.Azure.Devices.ClientTwin newTwin, bool onlyIfUnchanged = false, System.Threading.CancellationToken cancellationToken = default);
abstract member ReplaceAsync : string * string * Microsoft.Azure.Devices.ClientTwin * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Devices.ClientTwin>
override this.ReplaceAsync : string * string * Microsoft.Azure.Devices.ClientTwin * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Devices.ClientTwin>
Public Overridable Function ReplaceAsync (deviceId As String, moduleId As String, newTwin As ClientTwin, Optional onlyIfUnchanged As Boolean = false, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ClientTwin)
参数
- deviceId
- String
设备 ID。
- moduleId
- String
模块 ID。
- newTwin
- ClientTwin
要替换为的新 Twin 对象。
- onlyIfUnchanged
- Boolean
如果为 false,则即使所提供的设备标识的 ETag 已过期,也会执行此操作。 如果为 true,则如果提供的设备/模块标识的 ETag 已过期,则操作将引发 IotHubServiceException 。PreconditionFailed 可以使用 检索 GetAsync(String, String, CancellationToken)最新的 ETag。
- cancellationToken
- CancellationToken
任务取消令牌。
返回
更新了设备孪生。
例外
当提供的 deviceId
、 moduleId
或 newTwin
为 null 时。
当提供的 deviceId
或 moduleId
为空或空白时。
如果 IoT 中心使用不成功的状态代码响应了请求。 例如,如果提供的请求受到限制, IotHubServiceException 则会引发 with ThrottlingException 。 有关可能的错误情况的完整列表,请参阅 IotHubServiceErrorCode。
如果 HTTP 请求因网络连接、DNS 故障或服务器证书验证等基础问题而失败。
如果提供的 cancellationToken
已请求取消。