RelationalDatabaseFacadeExtensions.ExecuteSqlRawAsync Yöntem

Tanım

Aşırı Yüklemeler

ExecuteSqlRawAsync(DatabaseFacade, String, IEnumerable<Object>, CancellationToken)

Verilen SQL'i veritabanında yürütür ve etkilenen satır sayısını döndürür.

ExecuteSqlRawAsync(DatabaseFacade, String, Object[])

Verilen SQL'i veritabanında yürütür ve etkilenen satır sayısını döndürür.

ExecuteSqlRawAsync(DatabaseFacade, String, CancellationToken)

Verilen SQL'i veritabanında yürütür ve etkilenen satır sayısını döndürür.

ExecuteSqlRawAsync(DatabaseFacade, String, IEnumerable<Object>, CancellationToken)

Verilen SQL'i veritabanında yürütür ve etkilenen satır sayısını döndürür.

public static System.Threading.Tasks.Task<int> ExecuteSqlRawAsync (this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, string sql, System.Collections.Generic.IEnumerable<object> parameters, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteSqlRawAsync : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * string * seq<obj> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
<Extension()>
Public Function ExecuteSqlRawAsync (databaseFacade As DatabaseFacade, sql As String, parameters As IEnumerable(Of Object), Optional cancellationToken As CancellationToken = Nothing) As Task(Of Integer)

Parametreler

databaseFacade
DatabaseFacade

DatabaseFacade bağlam için.

sql
String

Yürütülecek SQL.

parameters
IEnumerable<Object>

SQL ile kullanılacak parametreler.

cancellationToken
CancellationToken

CancellationToken Görevin tamamlanmasını beklerken gözlemlemek için bir.

Döndürülenler

Zaman uyumsuz işlemi temsil eden görev. Görev sonucu, etkilenen satır sayısıdır.

Özel durumlar

Açıklamalar

Bu yöntemin bir işlem başlatmadığını unutmayın. Bu yöntemi bir işlemle kullanmak için ilk olarak veya çağrısında bulunur BeginTransaction(DatabaseFacade, IsolationLevel)UseTransaction.

SQL bir kez etkili olmadığından ve bir işlemde çalışmadığından, geçerlinin ExecutionStrategy bu yöntem tarafından kullanılmadığını unutmayın. ExecutionStrategy açıkça kullanılabilir ve SQL bir kez etkili değilse bir işlem de kullandığınızdan emin olun.

SQL kabul eden herhangi bir API'de olduğu gibi, SQL ekleme saldırısına karşı koruma sağlamak için herhangi bir kullanıcı girişini parametreleştirmek önemlidir. SQL sorgu dizesine parametre yer tutucuları ekleyebilir ve ardından parametre değerlerini ek bağımsız değişkenler olarak sağlayabilirsiniz. Sağladığınız tüm parametre değerleri otomatik olarak DbParameter'a dönüştürülür.

Ancak, hiçbir zaman doğrulanmamış kullanıcı tarafından sağlanan değerlerle birleştirilmiş veya ilişkilendirilmiş dizeyi ($"") bu yönteme geçirmeyin. Bunu yapmak uygulamanızı SQL ekleme saldırılarına maruz bırakabilir. İlişkili dize söz dizimini kullanmak için parametresini kullanmayı ExecuteSqlAsync(DatabaseFacade, FormattableString, CancellationToken) göz önünde bulundurun.

Daha fazla bilgi ve örnek için bkz. EF Core ile ham SQL komutlarını yürütme .

Şunlara uygulanır

ExecuteSqlRawAsync(DatabaseFacade, String, Object[])

Verilen SQL'i veritabanında yürütür ve etkilenen satır sayısını döndürür.

public static System.Threading.Tasks.Task<int> ExecuteSqlRawAsync (this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, string sql, params object[] parameters);
static member ExecuteSqlRawAsync : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * string * obj[] -> System.Threading.Tasks.Task<int>
<Extension()>
Public Function ExecuteSqlRawAsync (databaseFacade As DatabaseFacade, sql As String, ParamArray parameters As Object()) As Task(Of Integer)

Parametreler

databaseFacade
DatabaseFacade

DatabaseFacade bağlam için.

sql
String

Yürütülecek SQL.

parameters
Object[]

SQL ile kullanılacak parametreler.

Döndürülenler

Zaman uyumsuz işlemi temsil eden görev. Görev sonucu, etkilenen satır sayısıdır.

Açıklamalar

Bu yöntemin bir işlem başlatmadığını unutmayın. Bu yöntemi bir işlemle kullanmak için ilk olarak veya çağrısında bulunur BeginTransaction(DatabaseFacade, IsolationLevel)UseTransaction.

SQL bir kez etkili olmadığından ve bir işlemde çalışmadığından, geçerlinin ExecutionStrategy bu yöntem tarafından kullanılmadığını unutmayın. açıkça ExecutionStrategy kullanılabilir ve SQL bir kez etkili değilse bir işlem de kullandığınızdan emin olun.

SQL kabul eden herhangi bir API'de olduğu gibi, SQL ekleme saldırısına karşı koruma sağlamak için herhangi bir kullanıcı girişini parametreleştirmek önemlidir. SQL sorgu dizesine parametre yer tutucuları ekleyebilir ve ardından parametre değerlerini ek bağımsız değişkenler olarak sağlayabilirsiniz. Sağladığınız tüm parametre değerleri otomatik olarak DbParameter'a dönüştürülür.

Ancak, hiçbir zaman doğrulanmamış kullanıcı tarafından sağlanan değerlerle birleştirilmiş veya ilişkilendirilmiş dizeyi ($"") bu yönteme geçirmeyin. Bunu yapmak uygulamanızı SQL ekleme saldırılarına maruz bırakabilir. İlişkili dize söz dizimini kullanmak için parametresini kullanmayı ExecuteSqlAsync(DatabaseFacade, FormattableString, CancellationToken) göz önünde bulundurun.

Daha fazla bilgi ve örnek için bkz. EF Core ile ham SQL komutlarını yürütme .

Şunlara uygulanır

ExecuteSqlRawAsync(DatabaseFacade, String, CancellationToken)

Verilen SQL'i veritabanında yürütür ve etkilenen satır sayısını döndürür.

public static System.Threading.Tasks.Task<int> ExecuteSqlRawAsync (this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, string sql, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteSqlRawAsync : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * string * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
<Extension()>
Public Function ExecuteSqlRawAsync (databaseFacade As DatabaseFacade, sql As String, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Integer)

Parametreler

databaseFacade
DatabaseFacade

DatabaseFacade bağlam için.

sql
String

Yürütülecek SQL.

cancellationToken
CancellationToken

CancellationToken Görevin tamamlanmasını beklerken gözlemlemek için bir.

Döndürülenler

Zaman uyumsuz işlemi temsil eden görev. Görev sonucu, etkilenen satır sayısıdır.

Özel durumlar

Açıklamalar

Bu yöntemin bir işlem başlatmadığını unutmayın. Bu yöntemi bir işlemle kullanmak için ilk olarak veya çağrısında bulunur BeginTransaction(DatabaseFacade, IsolationLevel)UseTransaction.

SQL bir kez etkili olmadığından ve bir işlemde çalışmadığından, geçerlinin ExecutionStrategy bu yöntem tarafından kullanılmadığını unutmayın. açıkça ExecutionStrategy kullanılabilir ve SQL bir kez etkili değilse bir işlem de kullandığınızdan emin olun.

Hiçbir zaman doğrulanmamış kullanıcı tarafından sağlanan değerlerle birleştirilmiş veya ilişkilendirilmiş bir dizeyi ($"") bu yönteme geçirmeyin. Bunu yapmak uygulamanızı SQL ekleme saldırılarına maruz bırakabilir.

Daha fazla bilgi ve örnek için bkz. EF Core ile ham SQL komutlarını yürütme .

Şunlara uygulanır