Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 41452|Răspunde: 1

[Sursă] EF Core Series (5) execută instrucțiuni SQL sau vizualizări, proceduri stocate

[Copiază linkul]
Postat pe 19.02.2021 14:00:14 | | | |
EF Core Series 2 cuprinde OnModelCreating, creează indici folosind reflexii și multe altele
https://www.itsvse.com/thread-9392-1-1.html

EF Core Series (3) Atribute Entity Frame Shadow [Reprint]
https://www.itsvse.com/thread-9558-1-1.html

EF Core Series 4 analizează instrucțiunile SQL generate
https://www.itsvse.com/thread-9564-1-1.html
Cu Entity Framework Core, poți trece la interogarea SQL originală atunci când folosești o bază de date relațională. Când interogarea necesară nu poate fi reprezentată în LINQ, interogarea SQL brută poate fi folosită. Poți folosi și interogări SQL brute dacă folosirea interogărilor LINQ cauzează interogări SQL ineficiente. Interogarea SQL brută poate returna un tip generic de entitate sau un tip de entitate fără cheie în model.

Recapitulare: Executarea instrucțiunilor SQL și a procedurilor stocate cu Entity Framework (EF).

Entity Framework (EF) execută instrucțiuni SQL și proceduri stocate
https://www.itsvse.com/thread-9517-1-1.html
Efectuați interogări de instrucțiuni SQL, actualizări și ștergeri și invocați proceduri stocate și vizualizări folosind următoarele metode:

  • FromSqlRaw
  • FromSqlInterpolat
  • ExecuteSqlRaw
  • ExecuteSqlInterpolated



FromSqlRaw și FromSqlInterpolated sunt folosite în principal pentru operațiuni de interogare
ExecuteSqlRaw și ExecuteSqlInterpolated efectuează operațiuni de adăugare, actualizare și ștergere asupra bazei de date și returnează numărul de rânduri afectate


Sfârșitul este un cuvânt-cheie interpolat, care de obicei este o adăugare, ștergere, modificare și verificare a parametrilor, precum și o modalitate de a rezista atacurilor de injecție SQL folosind sintaxa interpolării stringurilor. De exemplu:

Ieși o instrucțiune SQL, condițiile de interogare nu trec prin splicing, așa cum se arată în figura de mai jos:

C# Parameterized Parameters folosește sp_executesql pentru a executa instrucțiuni sql
https://www.itsvse.com/thread-3111-1-1.html




Există câteva limitări de care trebuie să ții cont atunci când folosești interogări SQL native:

Interogările SQL trebuie să returneze date pentru toate atributele tipului entității.
Numele coloanelor din setul de rezultate trebuie să corespundă cu numele coloanelor la care sunt mapate atributele. Rețineți că acest comportament este diferit de EF6. Relația de mapare atribut/coloană a interogării SQL originale este ignorată în EF6, iar numele coloanelor setului de rezultate trebuie să corespundă cu numele atributelor.
Interogările SQL nu pot conține date asociate. Totuși, în multe cazuri, poți folosi metoda Include imediat după interogare pentru a returna date corelate (vezi Include Asociative Data).


(Sfârșit)




Precedent:EF Core Series 4 analizează instrucțiunile SQL generate
Următor:Fiddler înlocuiește linkurile, solicită redirecționarea redirecționării
 Proprietarul| Postat pe 14.06.2023 21:15:53 |
EF 6 execută instrucțiuni SQL native, probleme de injectare a parametrilor
https://www.itsvse.com/thread-10610-1-1.html
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com