Share via


RelationalQueryableExtensions.FromSql Yöntem

Tanım

Aşırı Yüklemeler

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

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

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

public static System.Linq.IQueryable<TEntity> FromSql<TEntity> (this Microsoft.EntityFrameworkCore.DbSet<TEntity> source, FormattableString sql) where TEntity : class;
static member FromSql : Microsoft.EntityFrameworkCore.DbSet<'Entity (requires 'Entity : null)> * FormattableString -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function FromSql(Of TEntity As Class) (source As DbSet(Of TEntity), sql As FormattableString) As IQueryable(Of TEntity)

Tür Parametreleri

TEntity

öğelerinin sourcetürü.

Parametreler

source
DbSet<TEntity>

ilişkilendirilmiş IQueryable<T> dize SQL sorgusunun temeli olarak kullanılacak bir (genellikle bir DbSet<TEntity>).

sql
FormattableString

Parametreleri olan bir SQL sorgusunu temsil eden ilişkilendirilmiş dize.

Döndürülenler

IQueryable<TEntity>

IQueryable<T> İlişkili dize SQL sorgusunu temsil eden.

Açıklamalar

Veritabanı sağlayıcısı sağlanan SQL üzerinde oluşturmayı destekliyorsa, LINQ işleçlerini kullanarak ham SQL sorgusunun üzerine oluşturabilirsiniz.

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 öğesine DbParameterdönüştürülür.

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

Şunlara uygulanır

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

Dikkat

For returning objects from SQL queries using plain strings, use FromSqlRaw instead. For returning objects from SQL queries using interpolated string syntax to create parameters, use FromSqlInterpolated instead. Call either new method directly on the DbSet at the root of the query.

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.

public static System.Linq.IQueryable<TEntity> FromSql<TEntity> (this System.Linq.IQueryable<TEntity> source, FormattableString sql) where TEntity : class;
[System.Obsolete("For returning objects from SQL queries using plain strings, use FromSqlRaw instead. For returning objects from SQL queries using interpolated string syntax to create parameters, use FromSqlInterpolated instead. Call either new method directly on the DbSet at the root of the query.", true)]
public static System.Linq.IQueryable<TEntity> FromSql<TEntity> (this System.Linq.IQueryable<TEntity> source, FormattableString sql) where TEntity : class;
static member FromSql : System.Linq.IQueryable<'Entity (requires 'Entity : null)> * FormattableString -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
[<System.Obsolete("For returning objects from SQL queries using plain strings, use FromSqlRaw instead. For returning objects from SQL queries using interpolated string syntax to create parameters, use FromSqlInterpolated instead. Call either new method directly on the DbSet at the root of the query.", true)>]
static member FromSql : System.Linq.IQueryable<'Entity (requires 'Entity : null)> * FormattableString -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function FromSql(Of TEntity As Class) (source As IQueryable(Of TEntity), sql As FormattableString) As IQueryable(Of TEntity)

Tür Parametreleri

TEntity

öğelerinin sourcetürü.

Parametreler

source
IQueryable<TEntity>

ilişkilendirilmiş IQueryable<T> dize SQL sorgusunun temeli olarak kullanılacak bir (genellikle bir DbSet<TEntity>).

sql
FormattableString

SQL sorgusunu temsil eden ilişkilendirilmiş dize.

Döndürülenler

IQueryable<TEntity>

IQueryable<T> İlişkili dize SQL sorgusunu temsil eden.

Öznitelikler

Şunlara uygulanır

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

Dikkat

For returning objects from SQL queries using plain strings, use FromSqlRaw instead. For returning objects from SQL queries using interpolated string syntax to create parameters, use FromSqlInterpolated instead. Call either new method directly on the DbSet at the root of the query.

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

public static System.Linq.IQueryable<TEntity> FromSql<TEntity> (this System.Linq.IQueryable<TEntity> source, Microsoft.EntityFrameworkCore.RawSqlString sql, params object[] parameters) where TEntity : class;
[System.Obsolete("For returning objects from SQL queries using plain strings, use FromSqlRaw instead. For returning objects from SQL queries using interpolated string syntax to create parameters, use FromSqlInterpolated instead. Call either new method directly on the DbSet at the root of the query.", true)]
public static System.Linq.IQueryable<TEntity> FromSql<TEntity> (this System.Linq.IQueryable<TEntity> source, Microsoft.EntityFrameworkCore.RawSqlString sql, params object[] parameters) where TEntity : class;
static member FromSql : System.Linq.IQueryable<'Entity (requires 'Entity : null)> * Microsoft.EntityFrameworkCore.RawSqlString * obj[] -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
[<System.Obsolete("For returning objects from SQL queries using plain strings, use FromSqlRaw instead. For returning objects from SQL queries using interpolated string syntax to create parameters, use FromSqlInterpolated instead. Call either new method directly on the DbSet at the root of the query.", true)>]
static member FromSql : System.Linq.IQueryable<'Entity (requires 'Entity : null)> * Microsoft.EntityFrameworkCore.RawSqlString * obj[] -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function FromSql(Of TEntity As Class) (source As IQueryable(Of TEntity), sql As RawSqlString, ParamArray parameters As Object()) As IQueryable(Of TEntity)

Tür Parametreleri

TEntity

öğelerinin sourcetürü.

Parametreler

source
IQueryable<TEntity>

Ham IQueryable<T> SQL sorgusunun temeli olarak kullanılacak bir (genellikle a DbSet<TEntity>).

sql
RawSqlString

Ham SQL sorgusu. NB. Örtük olarak dizeye dönüştürülebilir olduğundan RawSqlString burada bir dize değişmez değeri geçirilebilir.

parameters
Object[]

Parametrelere atanacak değerler.

Döndürülenler

IQueryable<TEntity>

IQueryable<T> Ham SQL sorgusunu temsil eden.

Öznitelikler

Şunlara uygulanı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))

public static System.Linq.IQueryable<TEntity> FromSql<TEntity> (this System.Linq.IQueryable<TEntity> source, string sql, params object[] parameters) where TEntity : class;
static member FromSql : System.Linq.IQueryable<'Entity (requires 'Entity : null)> * string * obj[] -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function FromSql(Of TEntity As Class) (source As IQueryable(Of TEntity), sql As String, ParamArray parameters As Object()) As IQueryable(Of TEntity)

Tür Parametreleri

TEntity

öğelerinin sourcetürü.

Parametreler

source
IQueryable<TEntity>

Ham IQueryable<T> SQL sorgusunun temeli olarak kullanılacak bir (genellikle a DbSet<TEntity>).

sql
String

Ham SQL sorgusu.

parameters
Object[]

Parametrelere atanacak değerler.

Döndürülenler

IQueryable<TEntity>

IQueryable<T> Ham SQL sorgusunu temsil eden.

Şunlara uygulanır