Ho creato una libreria di query da stringa a linq per le esigenze interne dell'azienda. Utilizzeremo questa libreria principalmente per interrogare su REST, ma potrebbe essere utilizzata in molte altre situazioni diverse.
Il nocciolo di ciò è questo, un utente può creare una query e inserirla in una URL come questa:
www.test.com/api/v1/users?query=
$ dove [#eq (Nome, Test) & & #gt (Id, 12345)] $ orderby [Nome, -Id]
ma potrebbero anche scrivere qualcosa di simile
www.test.com/api/v1/users?query=
$ dove [#eq (Nome, Test) & & #gt (Id, 12345)] $ durare []
$ last [] restituisce un singolo oggetto, mentre
$ orderby [Nome, -Id] restituisce una raccolta
Nella libreria ho un metodo che accetterà quella stringa e di conseguenza produrrà una raccolta o un singolo oggetto, non sono sicuro se quel metodo debba restituire un tipo di Object
o dynamic
.
Quale è più adatto, quale sarà meno confusionario per altri sviluppatori?
Inoltre, sto pensando di rilasciare questa lib come open source, ma non so se c'è bisogno che qualcosa di simile venga rilasciato.