LINQ.DYNAMIC

MRSILVA 15/09/2017 09:14:11
#476575
Olá.
E um aplicativo que estou construindo tem em vários formulários com os seguintes critérios de consulta:

Igual;
Maior;
Menor;
Maior ou igual;
Menor ou igual;
Diferente.


Ou seja, em alguns formulários tenho que fazer esse método para quase todos os campos, exemplo se tiver cinco campos no formulário terei que fazer trinta métodos (5x6) acho um pouco repetitivo já que tenho outros formulários com o mesmo critério, para resolver isso tentei fazer no meu repositório genérico uma abstração das classes e atributos envolvidos, mas não consegui passar o atributo da classe de forma genérica, em minhas pesquisas constatei que da para resolver isso usando reflection, só que em contra partida existe uma biblioteca chamada Linq.Dynamic que resolve meu problema já que é possível criar um único método que recebe uma string com o critério da minha consulta, fiz alguns testes e funciona perfeitamente. Alguém já utilizou esse recurso em algum aplicativo que já está em produção, é confiável teve algum problema de desempenho?

Estou um pouco receoso de utilizar isso em muitos lugares do meu sistema e depois ter que refazer.

Desde já agradeço.
KERPLUNK 15/09/2017 10:09:25
#476577
Linq.Dynamic, nunca usei em produção, mas já usei QueryProvider
LIANEIVA 26/09/2017 01:57:35
#476772
Resposta escolhida
Citação:

:
Olá.
E um aplicativo que estou construindo tem em vários formulários com os seguintes critérios de consulta:

Igual;
Maior;
Menor;
Maior ou igual;
Menor ou igual;
Diferente.


Ou seja, em alguns formulários tenho que fazer esse método para quase todos os campos, exemplo se tiver cinco campos no formulário terei que fazer trinta métodos (5x6) acho um pouco repetitivo já que tenho outros formulários com o mesmo critério, para resolver isso tentei fazer no meu repositório genérico uma abstração das classes e atributos envolvidos, mas não consegui passar o atributo da classe de forma genérica, em minhas pesquisas constatei que da para resolver isso usando reflection, só que em contra partida existe uma biblioteca chamada Linq.Dynamic que resolve meu problema já que é possível criar um único método que recebe uma string com o critério da minha consulta, fiz alguns testes e funciona perfeitamente. Alguém já utilizou esse recurso em algum aplicativo que já está em produção, é confiável teve algum problema de desempenho?

Estou um pouco receoso de utilizar isso em muitos lugares do meu sistema e depois ter que refazer.

Desde já agradeço.



Sim, eu utilizo a muitos anos e nunca tive problema como também resolveu muitos dos meus problemas, até hoje!
Tópico encerrado , respostas não são mais permitidas