2012-10-02 16 views
7

Vedo l'esempio dell'utilizzo di Dapper nell'esecuzione di stored procedure con parametri dinamici e nella restituzione dei risultati della procedura. Di solito, gli esempi usano .Execute, ma alcuni usano .Query. Ho difficoltà ad usare. Esegui. Che cosa dovrei usare nel caso sopra descritto - interrogare o eseguire E in quali casi dovrei usarli ciascuno?Dapper (connection.Query o connection.Execute)

risposta

12

Se è necessario restituire un valore, utilizzare Query(). Se è necessario eseguire una query che non restituisce nulla, ad esempio un aggiornamento, quindi utilizzare Execute().

esempio Query:

var myList = connection.Query("select * from myTable") 

Execute esempio:

connection.Execute("update myTable set columnA = @value", new {value = "ABC"}) 
+1

Giusto per chiarire: execute() restituisce il numero di righe interessate. – Caltor