Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 41452|Svar: 1

[Källa] EF Core Series (5) exekverar SQL-satser eller vyer, lagrade procedurer

[Kopiera länk]
Publicerad på 2021-02-19 14:00:14 | | | |
EF Core Series 2 kapslar in OnModelCreating, skapar index med reflektioner och mer
https://www.itsvse.com/thread-9392-1-1.html

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

EF Core Series 4 tittar på de genererade SQL-satserna
https://www.itsvse.com/thread-9564-1-1.html
Med Entity Framework Core kan du gå tillbaka till den ursprungliga SQL-frågan när du använder en relationsdatabas. När den nödvändiga frågan inte kan representeras i LINQ kan den råa SQL-frågan användas. Du kan också använda råa SQL-frågor om användning av LINQ-frågor orsakar ineffektiva SQL-frågor. Den råa SQL-frågan kan returnera en generisk entitetstyp eller en nyckellös entitetstyp i modellen.

Sammanfattning: Exekvering av SQL-satser och lagrade procedurer med Entity Framework (EF).

Entity Framework (EF) kör SQL-satser och lagrade procedurer
https://www.itsvse.com/thread-9517-1-1.html
Utför SQL-satsfrågor, uppdateringar och borttagningar, och anropa lagrade procedurer och vyer med följande metoder:

  • FromSqlRaw
  • FromSqlInterpolated
  • ExecuteSqlRaw
  • ExecuteSqlInterpolated



FromSqlRaw och FromSqlInterpolated används främst för frågeoperationer
ExecuteSqlRaw och ExecuteSqlInterpolated utför tilläggs-, uppdaterings- och borttagningsoperationer på databasen och returnerar antalet berörda rader


Slutresultatet är ett interpolerat nyckelord, vilket vanligtvis är en parametertillägg, borttagning, modifiering och kontroll, samt ett sätt att motstå SQL-injektionsattacker med hjälp av stränginterpolationssyntax. Till exempel:

Skriv ut en SQL-sats, frågevillkoren skickas inte genom splicing, som visas i figuren nedan:

C# Parameterized Parameters använder sp_executesql för att exekvera SQL-satser
https://www.itsvse.com/thread-3111-1-1.html




Det finns några begränsningar att vara medveten om när man använder inbyggda SQL-frågor:

SQL-frågor måste returnera data för alla attribut av entitetstypen.
Kolumnnamnen i resultatuppsättningen måste matcha kolumnnamnen som attributen mappas till. Observera att detta beteende skiljer sig från EF6. Attribut/kolumnmappningsrelationen för den ursprungliga SQL-frågan ignoreras i EF6, och kolumnnamnen i resultatuppsättningen måste matcha attributnamnen.
SQL-frågor kan inte innehålla associerad data. I många fall kan du dock använda Include-metoden omedelbart efter frågan för att returnera korrelerad data (se Include Associative Data).


(Slut)




Föregående:EF Core Series 4 tittar på de genererade SQL-satserna
Nästa:Fiddler ersätter länkar, begär vidarebefordran, omdirigerar
 Hyresvärd| Publicerad på 2023-06-14 21:15:53 |
EF 6 exekverar inbyggda SQL-satser, problem med parameterinjektion
https://www.itsvse.com/thread-10610-1-1.html
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com