RelationalDatabaseFacadeExtensions.ExecuteSqlInterpolatedAsync Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Spustí daný SQL pro databázi a vrátí počet ovlivněných řádků.
public static System.Threading.Tasks.Task<int> ExecuteSqlInterpolatedAsync (this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, FormattableString sql, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteSqlInterpolatedAsync : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * FormattableString * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
<Extension()>
Public Function ExecuteSqlInterpolatedAsync (databaseFacade As DatabaseFacade, sql As FormattableString, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Integer)
Parametry
- databaseFacade
- DatabaseFacade
Kontext DatabaseFacade .
Interpolovaný řetězec představující dotaz SQL s parametry.
- cancellationToken
- CancellationToken
A CancellationToken , která se má sledovat při čekání na dokončení úkolu.
Návraty
Úloha, která představuje asynchronní operaci. Výsledkem úkolu je počet ovlivněných řádků.
Výjimky
CancellationToken Pokud je zrušena.
Poznámky
Všimněte si, že tato metoda nespustí transakci. Chcete-li použít tuto metodu s transakcí, nejprve zavolejte BeginTransaction(DatabaseFacade, IsolationLevel) nebo UseTransaction.
Všimněte si, že aktuální ExecutionStrategy není používána touto metodou, protože SQL nemusí být idempotentní a nespustí v transakci. Lze ExecutionStrategy použít explicitně, přičemž nezapomeňte také použít transakci, pokud SQL není idempotentní.
Stejně jako u jakéhokoli rozhraní API, které přijímá SQL, je důležité parametrizovat jakýkoli uživatelský vstup, aby se chránil před útokem injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametrů a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter.
Další informace a příklady najdete v tématu Spouštění nezpracovaných příkazů SQL pomocí EF Core .
Platí pro
Entity Framework