Share via


RelationalQueryableExtensions Sınıf

Tanım

LINQ sorguları için ilişkisel veritabanına özgü uzantı yöntemleri.

public static class RelationalQueryableExtensions
type RelationalQueryableExtensions = class
Public Module RelationalQueryableExtensions
Devralma
RelationalQueryableExtensions

Yöntemler

AsSingleQuery<TEntity>(IQueryable<TEntity>)

Sorgu sonuçlarındaki koleksiyonları tek bir veritabanı sorgusuna yüklemek üzere yapılandırılmış yeni bir sorgu döndürür.

AsSplitQuery<TEntity>(IQueryable<TEntity>)

Sorgu sonuçlarındaki koleksiyonları ayrı veritabanı sorguları aracılığıyla yüklemek için yapılandırılmış yeni bir sorgu döndürür.

CreateDbCommand(IQueryable)

Bu sorguyu yürütmek için bir DbCommand kurulum oluşturur.

ExecuteDelete<TSource>(IQueryable<TSource>)

Veritabanından LINQ sorgusuyla eşleşen varlık örneklerinin tüm veritabanı satırlarını siler.

ExecuteDeleteAsync<TSource>(IQueryable<TSource>, CancellationToken)

Varlık örneklerinin LINQ sorgusuyla eşleşen veritabanı satırlarını veritabanından zaman uyumsuz olarak siler.

ExecuteUpdate<TSource>(IQueryable<TSource>, Expression<Func<SetPropertyCalls<TSource>,SetPropertyCalls<TSource>>>)

Varlık örnekleri için veritabanındaki LINQ sorgusuyla eşleşen tüm veritabanı satırlarını Güncelleştirmeler.

ExecuteUpdateAsync<TSource>(IQueryable<TSource>, Expression<Func<SetPropertyCalls<TSource>,SetPropertyCalls<TSource>>>, CancellationToken)

Varlık örnekleri için veritabanındaki LINQ sorgusuyla eşleşen veritabanı satırlarını zaman uyumsuz olarak güncelleştirir.

FromSql<TEntity>(DbSet<TEntity>, FormattableString)

SQL sorgusunu temsil eden ilişkilendirilmiş dizeyi temel alan bir LINQ sorgusu oluşturur.

FromSql<TEntity>(IQueryable<TEntity>, FormattableString)
Geçersiz.

SQL sorgusunu temsil eden ilişkilendirilmiş dizeyi temel alan bir LINQ sorgusu oluşturur.

Veritabanı sağlayıcısı sağlanan SQL üzerinde oluşturmayı destekliyorsa, LINQ işleçlerini kullanarak ham SQL sorgusunun üzerine oluşturabilirsiniz - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name).

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 ilişkilendirilmiş parametre yer tutucuları ekleyebilirsiniz. Sağladığınız tüm ilişkilendirilmiş parametre değerleri otomatik olarak DbParameter - context.Blogs.FromSql($"SELECT * FROM [dbo].[SearchBlogs]({userSuppliedSearchTerm})")öğesine dönüştürülür.

FromSql<TEntity>(IQueryable<TEntity>, RawSqlString, Object[])
Geçersiz.

Ham SQL sorgusunu temel alan bir LINQ sorgusu oluşturur.

Veritabanı sağlayıcısı sağlanan SQL üzerinde oluşturmayı destekliyorsa, LINQ işleçlerini kullanarak ham SQL sorgusunun üzerine oluşturabilirsiniz - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name).

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 - context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm)öğesine dönüştürülür.

Bu aşırı yükleme, DbParameter örneklerini parametre değerleri olarak da kabul eder. Bu, SQL sorgu dizesinde adlandırılmış parametreler kullanmanıza olanak tanır - context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({@searchTerm})", new SqlParameter("@searchTerm", userSuppliedSearchTerm))

FromSql<TEntity>(IQueryable<TEntity>, String, Object[])

Ham SQL sorgusunu temel alan bir LINQ sorgusu oluşturur.

Veritabanı sağlayıcısı sağlanan SQL üzerinde oluşturmayı destekliyorsa, LINQ işleçlerini kullanarak ham SQL sorgusunun üzerine oluşturabilirsiniz - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name).

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 - context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm)öğesine dönüştürülür.

Ayrıca bir DbParameter oluşturabilir ve bunu parametre değeri olarak sağlayabilirsiniz. Bu, SQL sorgu dizesinde adlandırılmış parametreler kullanmanıza olanak tanır - context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({@searchTerm})", new SqlParameter("@searchTerm", userSuppliedSearchTerm))

FromSqlInterpolated<TEntity>(DbSet<TEntity>, FormattableString)

SQL sorgusunu temsil eden ilişkilendirilmiş dizeyi temel alan bir LINQ sorgusu oluşturur.

FromSqlRaw<TEntity>(DbSet<TEntity>, String, Object[])

Ham SQL sorgusunu temel alan bir LINQ sorgusu oluşturur.

Şunlara uygulanır