Pular para o conteúdo principal

RetornaDiff

atenção

Gerado por Inteligência Artificial.


Visão Geral

Método responsável por comparar dois JSONs em formato string e retornar uma lista de diferenças entre eles. Utiliza a desserialização dos JSONs em objetos JObject para realizar comparações profundas e identificar alterações entre os dois estados JSON fornecidos.

BOX3_ERP_API.Core.BLL.ComparaJsonBLL.cs
public List<ComparacaoJson> RetornaDiff(string jsonAntes, string jsonDepois)

Dependências Diretas

MétodoLocalizaçãoLinha
RetornaDiff(string, string)<não informado>0

Referências

Método / EndpointLocalizaçãoLinha
JToken.DeepEquals(JToken?, JToken?)BOX3_ERP_API.Core.BLL.ComparaJsonBLL.cs19
JObject.Property(string)BOX3_ERP_API.Core.BLL.ComparaJsonBLL.cs23
JToken.DeepEquals(JToken?, JToken?)BOX3_ERP_API.Core.BLL.ComparaJsonBLL.cs25

Detalhamento das Referências

JsonConvert.DeserializeObject\Newtonsoft.Json.Linq.JObject(string)

Método da biblioteca Newtonsoft.Json utilizado para desserializar uma string JSON em um objeto JObject, permitindo manipulação e consulta estruturada dos dados JSON.

JToken.DeepEquals(JToken?, JToken?)

Método que realiza uma comparação profunda entre dois tokens JSON, verificando se possuem o mesmo conteúdo e estrutura, utilizado para identificar diferenças entre os objetos JSON.

JObject.Property(string)

Método que retorna a propriedade de um objeto JObject pelo nome, permitindo acessar valores específicos dentro do JSON desserializado.

Impacto de Alterações

Alterações neste método podem afetar diretamente a lógica de comparação de JSONs em toda a aplicação, impactando funcionalidades que dependem da identificação correta de diferenças entre estados JSON, como auditorias, logs de alterações e validações.

Propagação de Mudanças

  1. Atualização dos métodos que chamam RetornaDiff, como API_GetItem e API_AprovarSolicitacao no AlterarClienteController.
  2. Ajustes em testes unitários e de integração que validam a comparação de JSONs.
  3. Revisão das dependências da biblioteca Newtonsoft.Json para garantir compatibilidade.

Requisitos para Alteração Segura

  • Garantir cobertura de testes unitários para todos os cenários de comparação JSON.
  • Validar o comportamento com JSONs complexos e aninhados.
  • Manter compatibilidade com versões da biblioteca Newtonsoft.Json utilizadas.
  • Documentar claramente as mudanças e impactos esperados.