Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

ServiceStack.OrmLite:Onde está o método para escrever SQL personalizado e obter o conjunto de resultados de volta?


Sim, notei recentemente que db.SqlList se perdeu no refator OrmLite v4 então eu restaurei de volta a este commit . Que estará disponível na próxima versão da v4, antes do final do mês.

Você ainda pode usar db.Select para consultas SELECT brutas, por exemplo:
var results = db.Select<Poco>("SELECT * FROM a LIMIT 10");

É apenas um problema quando não é um SELECT declaração porque assumimos que é uma abreviação como:
var results = db.Select<Poco>("Foo = 'bar'");

E adicionar automaticamente o restante do SQL para você, mas isso é um problema quando você não está emitindo um SELECT declaração, por exemplo chamando um procedimento armazenado, que é o que db.SqlList é para uma vez que o SQL bruto permanece intocado.

Suporte para LIMIT na API de expressão digitada


Outra maneira de consultar com um limite é usar a API de expressão tipada, por exemplo:
var results = db.Select<Poco>(q => q.Limit(10));