PESQUISAR DENTRO DO XML
Pessoal, cenário: No banco de dados postgres, tenho uma tabela par armazenar os XMLs das NFes. Nessa tabela tenho um campo do tipo "xml" do postgres. Gostaria de saber se tem como efetuar pesquisas dentro desse campo utilizando EF core 6, mais ou menos como se fosse um "LIKE" de um Select do SQL, mas utilizando entity framework.
Boa tarde,
veja se assim resolve
veja se assim resolve
Citação:await _DbContext.Table.Where(x=> x.Coluna.Contains(VALOR)).ToListAsync()
Assim dá certo se a coluna for do tipo TEXT ou VARCHAR e no mapeamento do EF também for especificado os tipos. Já se a coluna for do tipo XML, usando o contains não vai.
Até gostaria de levantar outra questão:
Quais as diferença de usar o field como TEXT ou XML? Quais ganhos eu teria? Pois em testes aqui o field como TEXT funcionou muito bem, mas penso que se colocaram o tipo XML para ser definidos os campos, deve ter algum sentido.
Até gostaria de levantar outra questão:
Quais as diferença de usar o field como TEXT ou XML? Quais ganhos eu teria? Pois em testes aqui o field como TEXT funcionou muito bem, mas penso que se colocaram o tipo XML para ser definidos os campos, deve ter algum sentido.
Analisando o processo, acabei alterando o tipo da coluna do banco de XML para TEXT, pois nessa coluna será pesquisado apenas se tal tag existe com uma certa condição. No qual o tipo de dados TEXT cumpre muito bem a tarefa, sendo desnecessário implementar funções monstruosas e que a algum tempo "poderá" trazer problemas.
Creio que nós desenvolvedores, temos que analisar todos os fatores, não é só escrever código, mas sempre estar verificando se não estamos criando uma bazuca para caçar passarinho.
Obrigado a todos pelos comentários.
Creio que nós desenvolvedores, temos que analisar todos os fatores, não é só escrever código, mas sempre estar verificando se não estamos criando uma bazuca para caçar passarinho.
Obrigado a todos pelos comentários.
Tópico encerrado , respostas não são mais permitidas