Aracılığıyla paylaş


IIncludableQueryable<TEntity,TProperty> Arabirim

Tanım

Sorgulanabilir Include/ThenInclude zincirleme işleçlerini destekler.

public interface IIncludableQueryable<out TEntity,out TProperty> : System.Collections.Generic.IEnumerable<out TEntity>, System.Linq.IQueryable<out TEntity>
type IIncludableQueryable<'Entity, 'Property> = interface
    interface IQueryable<'Entity>
    interface seq<'Entity>
    interface IEnumerable
    interface IQueryable
Public Interface IIncludableQueryable(Of Out TEntity, Out TProperty)
Implements IEnumerable(Of Out TEntity), IQueryable(Of Out TEntity)

Tür Parametreleri

TEntity

Varlık türü.

Bu genel tür parametresi kovaryanttır. Bu, kendi belirttiğiniz türü veya daha fazla türetilmiş başka bir türü kullanabileceğiniz anlamına gelir. Kovaryans ve kontravaryans hakkında daha fazla bilgi için bkz. Genel Türlerde Kovaryans ve Kontravaryans.
TProperty

Özellik türü.

Bu genel tür parametresi kovaryanttır. Bu, kendi belirttiğiniz türü veya daha fazla türetilmiş başka bir türü kullanabileceğiniz anlamına gelir. Kovaryans ve kontravaryans hakkında daha fazla bilgi için bkz. Genel Türlerde Kovaryans ve Kontravaryans.
Uygulamalar

Açıklamalar

Daha fazla bilgi ve örnek için bkz. Veritabanı sağlayıcılarının ve uzantıların uygulanması ve EF Core sorgularının çalışma şekli .

Uzantı Metotları

WithPartitionKey<TEntity>(IQueryable<TEntity>, String)

Sorgu için kullanılan bölüm için bölüm anahtarını belirtin. Kimlik doğrulaması için bölüm anahtarına dayalı izin sağlayan bir kaynak belirteci kullanılırken gereklidir,

AllAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

Bir dizinin tüm öğelerinin bir koşulu karşılayıp karşılamadığını zaman uyumsuz olarak belirler.

AnyAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

Bir dizinin herhangi bir öğesinin bir koşulu karşılayıp sağlamadığını zaman uyumsuz olarak belirler.

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

Bir dizinin herhangi bir öğe içerip içermediğini zaman uyumsuz olarak belirler.

AsAsyncEnumerable<TSource>(IQueryable<TSource>)

Zaman uyumsuz olarak numaralandırılabilir bir IAsyncEnumerable<T> döndürür.

AsNoTracking<TEntity>(IQueryable<TEntity>)

Değişiklik izleyicisi, LINQ sorgusundan döndürülen varlıkların hiçbirini izlemez. Varlık örnekleri değiştirilirse, bu değişiklik izleyicisi tarafından algılanmaz ve SaveChanges() bu değişiklikleri veritabanında kalıcı hale getirmez.

AsNoTrackingWithIdentityResolution<TEntity>(IQueryable<TEntity>)

Değişiklik izleyicisi, LINQ sorgusundan döndürülen varlıkların hiçbirini izlemez. Varlık örnekleri değiştirilirse, bu değişiklik izleyicisi tarafından algılanmaz ve SaveChanges() bu değişiklikleri veritabanında kalıcı hale getirmez.

AsTracking<TEntity>(IQueryable<TEntity>)

Değişiklik izleyicisinin döndürülen tüm varlıklar için değişiklikleri takip edeceği yeni bir sorgu döndürür. Varlık örneklerinde yapılan tüm değişiklikler algılanır ve sırasında SaveChanges()veritabanında kalıcı hale gelir.

AsTracking<TEntity>(IQueryable<TEntity>, QueryTrackingBehavior)

'track' parametresinin değerine bağlı olarak, döndürülen tüm varlıklar için değişiklik izleyicisinin değişiklikleri izlediği veya izlemediği yeni bir sorgu döndürür. İzleme sırasında varlık örneklerinde yapılan tüm değişiklikler algılanır ve sırasında SaveChanges()veritabanında kalıcı hale gelir. İzleme yapılmadığında, varlık örnekleri değiştirilirse, bu değişiklik izleyicisi tarafından algılanmaz ve SaveChanges() bu değişiklikleri veritabanında kalıcı hale getirmez.

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin ortalamasını zaman uyumsuz olarak hesaplar.

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin ortalamasını zaman uyumsuz olarak hesaplar.

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin ortalamasını zaman uyumsuz olarak hesaplar.

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin ortalamasını zaman uyumsuz olarak hesaplar.

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin ortalamasını zaman uyumsuz olarak hesaplar.

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin ortalamasını zaman uyumsuz olarak hesaplar.

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin ortalamasını zaman uyumsuz olarak hesaplar.

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin ortalamasını zaman uyumsuz olarak hesaplar.

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin ortalamasını zaman uyumsuz olarak hesaplar.

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin ortalamasını zaman uyumsuz olarak hesaplar.

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

Varsayılan eşitlik karşılaştırıcısını kullanarak bir dizinin belirli bir öğeyi içerip içermediğini zaman uyumsuz olarak belirler.

CountAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

Bir koşulu karşılayan bir dizideki öğelerin sayısını zaman uyumsuz olarak döndürür.

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

Bir dizideki öğelerin sayısını zaman uyumsuz olarak döndürür.

ElementAtAsync<TSource>(IQueryable<TSource>, Int32, CancellationToken)

Bir dizideki belirtilen dizindeki öğeyi zaman uyumsuz olarak döndürür.

ElementAtOrDefaultAsync<TSource>(IQueryable<TSource>, Int32, CancellationToken)

Bir dizideki belirtilen dizindeki öğeyi veya aralık dışındaysa varsayılan değeri zaman uyumsuz olarak döndürür.

FirstAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

Belirtilen koşulu karşılayan bir dizinin ilk öğesini zaman uyumsuz olarak döndürür.

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

Bir dizinin ilk öğesini zaman uyumsuz olarak döndürür.

FirstOrDefaultAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

Belirli bir koşulu karşılayan bir dizinin ilk öğesini veya böyle bir öğe bulunamazsa varsayılan değeri zaman uyumsuz olarak döndürür.

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

Bir dizinin ilk öğesini veya dizi öğe içermiyorsa varsayılan değeri zaman uyumsuz olarak döndürür.

ForEachAsync<T>(IQueryable<T>, Action<T>, CancellationToken)

Sorgu sonuçlarını zaman uyumsuz olarak numaralandırır ve her öğede belirtilen eylemi gerçekleştirir.

IgnoreAutoIncludes<TEntity>(IQueryable<TEntity>)

Geçerli Entity Framework LINQ sorgusunun model düzeyinde herhangi bir istekli yüklenmiş gezinti uygulanmaması gerektiğini belirtir.

IgnoreQueryFilters<TEntity>(IQueryable<TEntity>)

Geçerli Entity Framework LINQ sorgusunun model düzeyinde varlık sorgusu filtresi uygulanmaması gerektiğini belirtir.

Include<TEntity>(IQueryable<TEntity>, String)

Sorgu sonuçlarına eklenecek ilgili varlıkları belirtir. Dahil edilecek gezinti özelliği, sorgulanan varlığın türüyle (TEntity) başlayarak belirtilir. Eklenecek diğer gezinti özellikleri '.' karakteriyle ayrılmış olarak eklenebilir.

Include<TEntity,TProperty>(IQueryable<TEntity>, Expression<Func<TEntity,TProperty>>)

Sorgu sonuçlarına eklenecek ilgili varlıkları belirtir. Dahil edilecek gezinti özelliği, sorgulanan varlığın türüyle (TEntity) başlayarak belirtilir. Dahil edilen türün gezinti özelliklerine göre ek türler eklemek istiyorsanız, bu çağrıdan sonra bir çağrıyı zincirleyin ThenInclude<TEntity,TPreviousProperty,TProperty>(IIncludableQueryable<TEntity, IEnumerable<TPreviousProperty>>, Expression<Func<TPreviousProperty, TProperty>>) .

LastAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

Belirtilen koşulu karşılayan bir dizinin son öğesini zaman uyumsuz olarak döndürür.

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

Bir dizinin son öğesini zaman uyumsuz olarak döndürür.

LastOrDefaultAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

Belirtilen koşulu karşılayan bir dizinin son öğesini veya böyle bir öğe bulunamazsa varsayılan değeri zaman uyumsuz olarak döndürür.

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

Bir dizinin son öğesini veya dizi öğe içermiyorsa varsayılan değeri zaman uyumsuz olarak döndürür.

Load<TSource>(IQueryable<TSource>)

Sorguyu numaralandırır. Entity Framework kullanılırken bu, sorgu sonuçlarının ilişkili bağlama yüklenmesine neden olur. Bu, ToList'i çağırmak ve listeyi atmakla eşdeğerdir (listeyi oluşturma yükü olmadan).

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

Zaman uyumsuz olarak sorguyu numaralandırır. Entity Framework kullanılırken bu, sorgu sonuçlarının ilişkili bağlama yüklenmesine neden olur. Bu, ToList'i çağırmak ve listeyi atmakla eşdeğerdir (listeyi oluşturma yükü olmadan).

LongCountAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

Zaman uyumsuz olarak, bir Int64 koşulu karşılayan bir dizideki öğe sayısını temsil eden bir döndürür.

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

Zaman uyumsuz olarak, bir Int64 dizideki öğelerin toplam sayısını temsil eden bir döndürür.

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

Bir dizinin en yüksek değerini zaman uyumsuz olarak döndürür.

MaxAsync<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>, CancellationToken)

Bir dizinin her öğesinde zaman uyumsuz olarak bir projeksiyon işlevi çağırır ve sonuçta elde edilen en yüksek değeri döndürür.

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

Bir dizinin en düşük değerini zaman uyumsuz olarak döndürür.

MinAsync<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>, CancellationToken)

Bir dizinin her öğesinde zaman uyumsuz olarak bir projeksiyon işlevi çağırır ve sonuçta elde edilen en düşük değeri döndürür.

SingleAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

Belirli bir koşulu karşılayan bir dizinin tek öğesini zaman uyumsuz olarak döndürür ve birden fazla öğe varsa bir özel durum oluşturur.

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

Zaman uyumsuz olarak bir dizinin tek öğesini döndürür ve dizide tam olarak bir öğe yoksa bir özel durum oluşturur.

SingleOrDefaultAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

Belirli bir koşulu veya böyle bir öğe yoksa varsayılan değeri karşılayan bir dizinin tek öğesini zaman uyumsuz olarak döndürür; Bu yöntem, koşulu birden fazla öğe karşılarsa bir özel durum oluşturur.

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

Bir dizinin tek öğesini veya dizi boşsa varsayılan değeri zaman uyumsuz olarak döndürür; bu yöntem, dizide birden fazla öğe varsa bir özel durum oluşturur.

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin toplamını zaman uyumsuz olarak hesaplar.

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin toplamını zaman uyumsuz olarak hesaplar.

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin toplamını zaman uyumsuz olarak hesaplar.

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin toplamını zaman uyumsuz olarak hesaplar.

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin toplamını zaman uyumsuz olarak hesaplar.

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin toplamını zaman uyumsuz olarak hesaplar.

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin toplamını zaman uyumsuz olarak hesaplar.

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin toplamını zaman uyumsuz olarak hesaplar.

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin toplamını zaman uyumsuz olarak hesaplar.

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>, CancellationToken)

Giriş dizisinin her öğesinde bir projeksiyon işlevi çağrılarak elde edilen değer dizisinin toplamını zaman uyumsuz olarak hesaplar.

TagWith<T>(IQueryable<T>, String)

EF LINQ sorgusuyla ilişkili etiket koleksiyonuna etiket ekler. Etiketler, sorgu işlem hattının farklı noktalarında bağlamsal izleme bilgileri sağlayabilen sorgu ek açıklamalarıdır.

TagWithCallSite<T>(IQueryable<T>, String, Int32)

Sorgu işlem hattının farklı noktalarında bağlamsal izleme bilgileri sağlayabilen yöntemin çağrıldığı kaynak dosya adı ve satırıyla EF LINQ sorgusuyla ilişkili etiket koleksiyonuna bir etiket ekler.

ThenInclude<TEntity,TPreviousProperty,TProperty>(IIncludableQueryable<TEntity,TPreviousProperty>, Expression<Func<TPreviousProperty,TProperty>>)

Yeni eklenen ilgili türe göre daha fazla eklenecek ek ilgili verileri belirtir.

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

zaman uyumsuz olarak numaralandırarak bir IQueryable<T> diziden zaman uyumsuz olarak bir dizi oluşturur.

ToDictionaryAsync<TSource,TKey>(IQueryable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>, CancellationToken)

Dictionary<TKey,TValue> Belirtilen anahtar seçici işlevine ve bir karşılaştırıcıya göre zaman uyumsuz olarak numaralandırarak bir 'den IQueryable<T> oluşturur.

ToDictionaryAsync<TSource,TKey>(IQueryable<TSource>, Func<TSource,TKey>, CancellationToken)

Dictionary<TKey,TValue> Belirtilen anahtar seçici işlevine göre zaman uyumsuz olarak numaralandırarak bir 'den IQueryable<T> oluşturur.

ToDictionaryAsync<TSource,TKey,TElement>(IQueryable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>, CancellationToken)

Dictionary<TKey,TValue> Belirtilen anahtar seçici işlevine, karşılaştırıcıya ve öğe seçici işlevine göre zaman uyumsuz olarak numaralandırarak öğesinden IQueryable<T> bir oluşturur.

ToDictionaryAsync<TSource,TKey,TElement>(IQueryable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, CancellationToken)

Dictionary<TKey,TValue> Belirtilen anahtar seçiciye ve öğe seçici işlevine göre zaman uyumsuz olarak numaralandırarak öğesinden IQueryable<T> bir oluşturur.

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

zaman uyumsuz olarak numaralandırarak bir'den IQueryable<T> bir oluştururList<T>.

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.

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>(IQueryable<TEntity>, RawSqlString, Object[])
Kullanımdan kalktı..

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>, FormattableString)
Kullanımdan kalktı..

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>, 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))

Şunlara uygulanır