ApplicationData.CreateOrUpdateAsync Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Cria ou atualiza um recurso de dados do aplicativo em uma parte específica.
public virtual System.Threading.Tasks.Task<Azure.Response> CreateOrUpdateAsync (string partyId, string applicationDataId, Azure.Core.RequestContent content, Azure.RequestContext context = default);
abstract member CreateOrUpdateAsync : string * string * Azure.Core.RequestContent * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Response>
override this.CreateOrUpdateAsync : string * string * Azure.Core.RequestContent * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Response>
Public Overridable Function CreateOrUpdateAsync (partyId As String, applicationDataId As String, content As RequestContent, Optional context As RequestContext = Nothing) As Task(Of Response)
Parâmetros
- partyId
- String
ID da parte associada.
- applicationDataId
- String
ID do recurso de dados do aplicativo.
- content
- RequestContent
O conteúdo a ser enviado como o corpo da solicitação. Os detalhes do esquema do corpo da solicitação estão na seção Comentários abaixo.
- context
- RequestContext
O contexto de solicitação, que pode substituir os comportamentos padrão do pipeline do cliente por chamada.
Retornos
A resposta retornada do serviço. Os detalhes do esquema do corpo da resposta estão na seção Comentários abaixo.
Exceções
partyId
, applicationDataId
ou content
é nulo.
partyId
ou applicationDataId
é uma cadeia de caracteres vazia e esperava-se que não estivesse vazia.
O serviço retornou um código de status sem êxito.
Exemplos
Este exemplo mostra como chamar CreateOrUpdateAsync com os parâmetros necessários e analisar o resultado.
var credential = new DefaultAzureCredential();
var client = new FarmBeatsClient(credential).GetApplicationDataClient(<2022-11-01-preview>);
var data = new {};
Response response = await client.CreateOrUpdateAsync("<partyId>", "<applicationDataId>", RequestContent.Create(data));
JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement;
Console.WriteLine(result.ToString());
Este exemplo mostra como chamar CreateOrUpdateAsync com todos os parâmetros e conteúdo da solicitação e como analisar o resultado.
var credential = new DefaultAzureCredential();
var client = new FarmBeatsClient(credential).GetApplicationDataClient(<2022-11-01-preview>);
var data = new {
applicationProductDetails = new[] {
new {
productName = "<productName>",
isCarrier = true,
avgMaterial = new {
unit = "<unit>",
value = 123.45d,
},
totalMaterial = new {
unit = "<unit>",
value = 123.45d,
},
}
},
avgMaterial = new {
unit = "<unit>",
value = 123.45d,
},
totalMaterial = new {
unit = "<unit>",
value = 123.45d,
},
area = new {
unit = "<unit>",
value = 123.45d,
},
operationModifiedDateTime = "2022-05-10T18:57:31.2311892Z",
operationStartDateTime = "2022-05-10T18:57:31.2311892Z",
operationEndDateTime = "2022-05-10T18:57:31.2311892Z",
associatedBoundaryId = "<associatedBoundaryId>",
status = "<status>",
source = "<source>",
name = "<name>",
description = "<description>",
properties = new {
key = new {},
},
};
Response response = await client.CreateOrUpdateAsync("<partyId>", "<applicationDataId>", RequestContent.Create(data));
JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement;
Console.WriteLine(result.GetProperty("applicationProductDetails")[0].GetProperty("productName").ToString());
Console.WriteLine(result.GetProperty("applicationProductDetails")[0].GetProperty("isCarrier").ToString());
Console.WriteLine(result.GetProperty("applicationProductDetails")[0].GetProperty("avgMaterial").GetProperty("unit").ToString());
Console.WriteLine(result.GetProperty("applicationProductDetails")[0].GetProperty("avgMaterial").GetProperty("value").ToString());
Console.WriteLine(result.GetProperty("applicationProductDetails")[0].GetProperty("totalMaterial").GetProperty("unit").ToString());
Console.WriteLine(result.GetProperty("applicationProductDetails")[0].GetProperty("totalMaterial").GetProperty("value").ToString());
Console.WriteLine(result.GetProperty("avgMaterial").GetProperty("unit").ToString());
Console.WriteLine(result.GetProperty("avgMaterial").GetProperty("value").ToString());
Console.WriteLine(result.GetProperty("totalMaterial").GetProperty("unit").ToString());
Console.WriteLine(result.GetProperty("totalMaterial").GetProperty("value").ToString());
Console.WriteLine(result.GetProperty("area").GetProperty("unit").ToString());
Console.WriteLine(result.GetProperty("area").GetProperty("value").ToString());
Console.WriteLine(result.GetProperty("operationModifiedDateTime").ToString());
Console.WriteLine(result.GetProperty("operationStartDateTime").ToString());
Console.WriteLine(result.GetProperty("operationEndDateTime").ToString());
Console.WriteLine(result.GetProperty("attachmentsLink").ToString());
Console.WriteLine(result.GetProperty("associatedBoundaryId").ToString());
Console.WriteLine(result.GetProperty("partyId").ToString());
Console.WriteLine(result.GetProperty("id").ToString());
Console.WriteLine(result.GetProperty("eTag").ToString());
Console.WriteLine(result.GetProperty("status").ToString());
Console.WriteLine(result.GetProperty("createdDateTime").ToString());
Console.WriteLine(result.GetProperty("modifiedDateTime").ToString());
Console.WriteLine(result.GetProperty("source").ToString());
Console.WriteLine(result.GetProperty("name").ToString());
Console.WriteLine(result.GetProperty("description").ToString());
Console.WriteLine(result.GetProperty("createdBy").ToString());
Console.WriteLine(result.GetProperty("modifiedBy").ToString());
Console.WriteLine(result.GetProperty("properties").GetProperty("<test>").ToString());
Comentários
Abaixo está o esquema JSON para as cargas de solicitação e resposta.
Corpo da solicitação:
Esquema para ApplicationData
:
{
applicationProductDetails: [
{
productName: string, # Optional. Name of the product applied.
isCarrier: boolean, # Optional. A flag indicating whether product is a carrier for a tank mix.
avgMaterial: {
unit: string, # Optional. Data unit.
value: number, # Optional. Data value.
}, # Optional. Schema for storing measurement reading and unit.
totalMaterial: Measure, # Optional. Schema for storing measurement reading and unit.
}
], # Optional. Application product details.
avgMaterial: Measure, # Optional. Schema for storing measurement reading and unit.
totalMaterial: Measure, # Optional. Schema for storing measurement reading and unit.
area: Measure, # Optional. Schema for storing measurement reading and unit.
operationModifiedDateTime: string (ISO 8601 Format), # Optional. Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.
Note: this will be specified by the source provider itself.
operationStartDateTime: string (ISO 8601 Format), # Optional. Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.
operationEndDateTime: string (ISO 8601 Format), # Optional. End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.
attachmentsLink: string, # Optional. Link for attachments.
associatedBoundaryId: string, # Optional. Optional boundary ID of the field for which operation was applied.
partyId: string, # Optional. Party ID which belongs to the operation data.
id: string, # Optional. Unique resource ID.
eTag: string, # Optional. The ETag value to implement optimistic concurrency.
status: string, # Optional. Status of the resource.
createdDateTime: string (ISO 8601 Format), # Optional. Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.
modifiedDateTime: string (ISO 8601 Format), # Optional. Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.
source: string, # Optional. Source of the resource.
name: string, # Optional. Name to identify resource.
description: string, # Optional. Textual description of the resource.
createdBy: string, # Optional. Created by user/tenant id.
modifiedBy: string, # Optional. Modified by user/tenant id.
properties: Dictionary<string, any>, # Optional. A collection of key value pairs that belongs to the resource.
Each pair must not have a key greater than 50 characters
and must not have a value greater than 150 characters.
Note: A maximum of 25 key value pairs can be provided for a resource and only string,
numeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.
}
Corpo da resposta:
Esquema para ApplicationData
:
{
applicationProductDetails: [
{
productName: string, # Optional. Name of the product applied.
isCarrier: boolean, # Optional. A flag indicating whether product is a carrier for a tank mix.
avgMaterial: {
unit: string, # Optional. Data unit.
value: number, # Optional. Data value.
}, # Optional. Schema for storing measurement reading and unit.
totalMaterial: Measure, # Optional. Schema for storing measurement reading and unit.
}
], # Optional. Application product details.
avgMaterial: Measure, # Optional. Schema for storing measurement reading and unit.
totalMaterial: Measure, # Optional. Schema for storing measurement reading and unit.
area: Measure, # Optional. Schema for storing measurement reading and unit.
operationModifiedDateTime: string (ISO 8601 Format), # Optional. Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.
Note: this will be specified by the source provider itself.
operationStartDateTime: string (ISO 8601 Format), # Optional. Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.
operationEndDateTime: string (ISO 8601 Format), # Optional. End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.
attachmentsLink: string, # Optional. Link for attachments.
associatedBoundaryId: string, # Optional. Optional boundary ID of the field for which operation was applied.
partyId: string, # Optional. Party ID which belongs to the operation data.
id: string, # Optional. Unique resource ID.
eTag: string, # Optional. The ETag value to implement optimistic concurrency.
status: string, # Optional. Status of the resource.
createdDateTime: string (ISO 8601 Format), # Optional. Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.
modifiedDateTime: string (ISO 8601 Format), # Optional. Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.
source: string, # Optional. Source of the resource.
name: string, # Optional. Name to identify resource.
description: string, # Optional. Textual description of the resource.
createdBy: string, # Optional. Created by user/tenant id.
modifiedBy: string, # Optional. Modified by user/tenant id.
properties: Dictionary<string, any>, # Optional. A collection of key value pairs that belongs to the resource.
Each pair must not have a key greater than 50 characters
and must not have a value greater than 150 characters.
Note: A maximum of 25 key value pairs can be provided for a resource and only string,
numeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.
}
Aplica-se a
Azure SDK for .NET