Compartir a través de


DigitalTwinsClient.CreateOrReplaceRelationshipAsync<T> Método

Definición

Crea una relación en un gemelo digital de forma asincrónica. Si el identificador de relación proporcionado ya está en uso, se intentará reemplazar la relación existente por la relación proporcionada.

public virtual System.Threading.Tasks.Task<Azure.Response<T>> CreateOrReplaceRelationshipAsync<T> (string digitalTwinId, string relationshipId, T relationship, Azure.ETag? ifNoneMatch = default, System.Threading.CancellationToken cancellationToken = default);
abstract member CreateOrReplaceRelationshipAsync : string * string * 'T * Nullable<Azure.ETag> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Response<'T>>
override this.CreateOrReplaceRelationshipAsync : string * string * 'T * Nullable<Azure.ETag> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Response<'T>>
Public Overridable Function CreateOrReplaceRelationshipAsync(Of T) (digitalTwinId As String, relationshipId As String, relationship As T, Optional ifNoneMatch As Nullable(Of ETag) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Response(Of T))

Parámetros de tipo

T

Tipo al que se va a deserializar la relación.

Parámetros

digitalTwinId
String

Identificador del gemelo digital de origen.

relationshipId
String

Identificador de la relación que se va a crear.

relationship
T

Relación application/json que se va a crear.

ifNoneMatch
Nullable<ETag>

Encabezado If-None-Match que hace que el método de solicitud esté condicional en una caché de destinatarios o en un servidor de origen, ya sea que no tenga ninguna representación actual del recurso de destino. Para obtener más información sobre esta propiedad, vea RFC 7232. Los valores aceptables son null o "". Si la opción ifNonMatch es null, el servicio reemplazará la entidad existente por la nueva entidad. Si la opción ifNoneMatch es "" (o All) el servicio rechazará la solicitud si la entidad ya existe. ETag opcional para realizar la solicitud solo si el valor no coincide con el servicio.

cancellationToken
CancellationToken

Token de cancelación.

Devoluciones

Excepciones

Excepción que captura los errores del servicio. Consulte las ErrorCode propiedades y Status para obtener más detalles.

La excepción se produce cuando digitalTwinId o relationshipId es null.

Ejemplos

var floorBuildingRelationshipPayload = new CustomRelationship
{
    Id = "floorBuildingRelationshipId",
    SourceId = "floorTwinId",
    TargetId = "buildingTwinId",
    Name = "containedIn",
    Prop1 = "Prop1 val",
    Prop2 = 4
};

Response<CustomRelationship> createCustomRelationshipResponse = await client
    .CreateOrReplaceRelationshipAsync<CustomRelationship>("floorTwinId", "floorBuildingRelationshipId", floorBuildingRelationshipPayload);
Console.WriteLine($"Created a digital twin relationship '{createCustomRelationshipResponse.Value.Id}' " +
    $"from twin '{createCustomRelationshipResponse.Value.SourceId}' to twin '{createCustomRelationshipResponse.Value.TargetId}'.");

Comentarios

Las relaciones son un vínculo unidireccional desde un gemelo digital de origen a otro, como se describe en el momento de creación del modelo asignado del gemelo digital.

Para obtener más ejemplos, consulte nuestros ejemplos de repositorio.

Se aplica a

Consulte también