RelationalQueryableExtensions 类

定义

LINQ 查询的关系数据库特定扩展方法。

public static class RelationalQueryableExtensions
type RelationalQueryableExtensions = class
Public Module RelationalQueryableExtensions
继承
RelationalQueryableExtensions

方法

AsSingleQuery<TEntity>(IQueryable<TEntity>)

返回一个新查询,该查询配置为在单个数据库查询中加载查询结果中的集合。

AsSplitQuery<TEntity>(IQueryable<TEntity>)

返回一个新查询,该查询配置为通过单独的数据库查询加载查询结果中的集合。

CreateDbCommand(IQueryable)

创建一个 DbCommand 用于执行此查询的设置。

ExecuteDelete<TSource>(IQueryable<TSource>)

从数据库中删除与 LINQ 查询匹配的实体实例的所有数据库行。

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

从数据库中异步删除与 LINQ 查询匹配的实体实例的数据库行。

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

汇报与数据库中的 LINQ 查询匹配的实体实例的所有数据库行。

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

异步更新与数据库中的 LINQ 查询匹配的实体实例的数据库行。

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

基于表示 SQL 查询的内插字符串创建 LINQ 查询。

FromSql<TEntity>(IQueryable<TEntity>, FormattableString)
已过时.

基于表示 SQL 查询的内插字符串创建 LINQ 查询。

如果数据库提供程序支持在提供的 SQL 上进行撰写,则可以使用 LINQ 运算符在原始 SQL 查询的基础上进行撰写 - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)

与任何接受 SQL 的 API 一样,必须参数化任何用户输入,以防止 SQL 注入攻击。 可以在 SQL 查询字符串中包含内插参数占位符。 提供的任何内插参数值将自动转换为 DbParameter - context.Blogs.FromSql($"SELECT * FROM [dbo].[SearchBlogs]({userSuppliedSearchTerm})")

FromSql<TEntity>(IQueryable<TEntity>, RawSqlString, Object[])
已过时.

基于原始 SQL 查询创建 LINQ 查询。

如果数据库提供程序支持在提供的 SQL 上进行撰写,则可以使用 LINQ 运算符在原始 SQL 查询的基础上进行撰写 - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)

与任何接受 SQL 的 API 一样,必须参数化任何用户输入,以防止 SQL 注入攻击。 可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为其他参数提供。 提供的任何参数值将自动转换为 DbParameter - context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm)

此重载还接受 DbParameter 实例作为参数值。 这允许在 SQL 查询字符串中使用命名参数 - context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({@searchTerm})", new SqlParameter("@searchTerm", userSuppliedSearchTerm))

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

基于原始 SQL 查询创建 LINQ 查询。

如果数据库提供程序支持在提供的 SQL 上进行撰写,则可以使用 LINQ 运算符在原始 SQL 查询的基础上进行撰写 - context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)

与任何接受 SQL 的 API 一样,必须参数化任何用户输入,以防止 SQL 注入攻击。 可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为其他参数提供。 提供的任何参数值将自动转换为 DbParameter - context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm)

还可以构造 DbParameter 并将其作为参数值提供给 。 这允许在 SQL 查询字符串中使用命名参数 - context.Blogs.FromSql("SELECT * FROM [dbo].[SearchBlogs]({@searchTerm})", new SqlParameter("@searchTerm", userSuppliedSearchTerm))

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

基于表示 SQL 查询的内插字符串创建 LINQ 查询。

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

基于原始 SQL 查询创建 LINQ 查询。

适用于