DbSet<TEntity>.SqlQuery(String, Object[]) Yöntem

Tanım

Bu kümedeki varlıkları döndürecek bir ham SQL sorgusu oluşturur. Varsayılan olarak, döndürülen varlıklar bağlam tarafından izlenir; bu, döndürülen üzerinde AsNoTracking çağrılarak DbSqlQuery<TEntity> değiştirilebilir. Döndürülen varlıkların her zaman bu küme için türünde olduğunu ve hiçbir zaman türetilmiş bir tür olmadığını unutmayın. Sorgulanan tablo veya tablolar diğer varlık türleri için veri içeriyorsa, yalnızca doğru türdeki varlıkların döndürülmesini sağlamak için SQL sorgusunun uygun şekilde yazılması gerekir.

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. Bağlam. Blogs.SqlQuery("SELECT * FROM dbo. Gönderiler WHERE Yazar = @p0", userSuppliedAuthor); Alternatif olarak, bir DbParameter oluşturabilir ve Bunu SqlQuery'ye sağlayabilirsiniz. Bu, SQL sorgu dizesinde adlandırılmış parametreleri kullanmanıza olanak tanır. Bağlam. Blogs.SqlQuery("SELECT * FROM dbo. Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

public virtual System.Data.Entity.Infrastructure.DbSqlQuery<TEntity> SqlQuery(string sql, params object[] parameters);
abstract member SqlQuery : string * obj[] -> System.Data.Entity.Infrastructure.DbSqlQuery<'Entity (requires 'Entity : null)>
override this.SqlQuery : string * obj[] -> System.Data.Entity.Infrastructure.DbSqlQuery<'Entity (requires 'Entity : null)>
Public Overridable Function SqlQuery (sql As String, ParamArray parameters As Object()) As DbSqlQuery(Of TEntity)

Parametreler

sql
String

SQL sorgu dizesi.

parameters
Object[]

SQL sorgu dizesine uygulanacak parametreler. Çıkış parametreleri kullanılırsa, sonuçlar tamamen okunana kadar değerleri kullanılamaz. Bunun nedeni DbDataReader'ın temel davranışıdır. Daha fazla ayrıntı için bkz http://go.microsoft.com/fwlink/?LinkID=398589 .

Döndürülenler

DbSqlQuery<TEntity> Numaralandırıldığında sorguyu yürütecek bir nesne.

Şunlara uygulanır