2012-10-02 10 views
7

Widzę przykład użycia Dappera podczas wykonywania procedur składowanych z parametrami dynamicznymi i zwracania wyników procedury. Zwykle przykłady wykorzystują .Execute, ale niektóre z nich używają .Query. Mam trudności w korzystaniu z .Execute. Którego mam użyć w przypadku opisanym powyżej - zapytanie lub wykonanie ORAZ w jakich przypadkach użyłbym każdego z nich?Dapper (connection.Query lub connection.Execute)

Odpowiedz

12

Jeśli chcesz zwrócić wartość, użyj Query(). Jeśli chcesz wykonać zapytanie, które nie zwraca niczego, na przykład aktualizację, użyj Execute().

przykład Zapytanie:

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

Execute przykład:

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

prostu do wyjaśnienia: Execute() zwraca liczbę wierszy. – Caltor