Jestem pod wielkim wrażeniem wyników Dapper Micro ORM dla stackoverflow.com. Zastanawiam się nad tym w moim nowym projekcie, ale mam obawy, że czasami mój projekt wymaga procedury składowanej i często szukałem w Internecie, ale nic nie znalazłem w procedurze przechowywanej. Czy jest więc jakiś sposób, aby Dapper pracował z procedurą przechowywaną?
Daj mi znać, jeśli to możliwe, w przeciwnym razie muszę go przedłużyć.
.net
stored-procedures
orm
dapper
Jalpesh Vadgama
źródło
źródło
Odpowiedzi:
W prostym przypadku możesz wykonać:
Jeśli chcesz czegoś bardziej wyszukanego, możesz:
Dodatkowo możesz użyć exec w partii, ale jest to bardziej niezręczne.
źródło
cnn.Query<MyType>
jak mogę uzyskać wartość parametru Wyjściowego proc?Myślę, że odpowiedź zależy od funkcji procedur przechowywanych, których należy użyć.
Procedury składowane zwracające zestaw wyników można uruchomić za pomocą
Query
; procedury składowane, które nie zwracają zestawu wyników, można uruchomić przy użyciuExecute
- w obu przypadkach (przy użyciuEXEC <procname>
) jako polecenia SQL (plus parametry wejściowe w razie potrzeby). Więcej informacji znajduje się w dokumentacji .Od wersji 2d128ccdc9a2 nie ma natywnej obsługi
OUTPUT
parametrów; możesz to dodać lub alternatywnie skonstruować bardziej złożoneQuery
polecenie, które zadeklarowało zmienne TSQL, wykonało SP zbierającOUTPUT
parametry do zmiennych lokalnych i ostatecznie zwróciło je w zestawie wyników:źródło
Oto kod do uzyskania zwrotu wartości z procedury Store
Procedura składowana:
Kod:
źródło
To samo z góry, nieco bardziej szczegółowe
Korzystanie z .Net Core
Kontroler
Procedura składowana (relacja rodzic-dziecko)
Referencje w sprawie
źródło
Microsoft.EntityFrameworkCore
? Używasz tylko Dappera w DAL ?Z wielokrotnym powrotem i wieloma parametrami
źródło
źródło