Поделиться через


IIncludableQueryable<TEntity,TProperty> Интерфейс

Определение

Поддерживает запрашиваемые операторы цепочки Include/ThenInclude.

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)

Параметры типа

TEntity

Тип сущности.

Это ковариантный параметр типа. Это означает, что вы можете использовать любой из указанных типов или любой тип, являющийся более производным. Дополнительные сведения о ковариантности и контрвариантности см. в статье Ковариантность и контрвариантность в универсальных шаблонах.
TProperty

Тип свойства.

Это ковариантный параметр типа. Это означает, что вы можете использовать любой из указанных типов или любой тип, являющийся более производным. Дополнительные сведения о ковариантности и контрвариантности см. в статье Ковариантность и контрвариантность в универсальных шаблонах.
Реализации

Комментарии

Дополнительные сведения и примеры см. в разделах Реализация поставщиков и расширений баз данных и Принцип работы запросов EF Core .

Методы расширения

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

Укажите ключ секции для секции, используемой для запроса. Требуется при использовании маркера ресурса, который предоставляет разрешение на основе ключа секции для проверки подлинности.

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

Асинхронно определяет, удовлетворяют ли все элементы последовательности условию.

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

Асинхронно определяет, удовлетворяет ли любой элемент последовательности условию.

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

Асинхронно определяет, содержит ли последовательность какие-либо элементы.

AsAsyncEnumerable<TSource>(IQueryable<TSource>)

Возвращает объект , IAsyncEnumerable<T> который можно перечислить асинхронно.

AsNoTracking<TEntity>(IQueryable<TEntity>)

Средство отслеживания изменений не будет отслеживать сущности, возвращаемые запросом LINQ. Если экземпляры сущности изменены, это не будет обнаружено средство отслеживания изменений и SaveChanges() не будет сохранять эти изменения в базе данных.

AsNoTrackingWithIdentityResolution<TEntity>(IQueryable<TEntity>)

Средство отслеживания изменений не будет отслеживать сущности, возвращаемые запросом LINQ. Если экземпляры сущности изменены, это не будет обнаружено средство отслеживания изменений и SaveChanges() не будет сохранять эти изменения в базе данных.

AsTracking<TEntity>(IQueryable<TEntity>)

Возвращает новый запрос, в котором средство отслеживания изменений будет отслеживать изменения для всех возвращаемых сущностей. Любое изменение экземпляров сущностей будет обнаружено и сохранено в базе данных во время SaveChanges().

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

Возвращает новый запрос, в котором средство отслеживания изменений будет отслеживать изменения или не будет отслеживать все возвращаемые сущности в зависимости от значения параметра track. При отслеживании любое изменение экземпляров сущности будет обнаружено и сохранено в базе данных во время SaveChanges(). Если экземпляры сущности не отслеживаются, это не будет обнаружено средство отслеживания изменений и SaveChanges() не будет сохранять эти изменения в базе данных.

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

Асинхронно вычисляет среднее значение последовательности значений, полученное путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет среднее значение последовательности значений, полученное путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет среднее значение последовательности значений, полученное путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет среднее значение последовательности значений, полученное путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет среднее значение последовательности значений, полученное путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет среднее значение последовательности значений, полученное путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет среднее значение последовательности значений, полученное путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет среднее значение последовательности значений, полученное путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет среднее значение последовательности значений, полученное путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет среднее значение последовательности значений, полученное путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно определяет, содержит ли последовательность указанный элемент, используя компаратор на равенство по умолчанию.

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

Асинхронно возвращает количество элементов последовательности, удовлетворяющих условию.

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

Асинхронно возвращает количество элементов в последовательности.

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

Асинхронно возвращает элемент по указанному индексу в последовательности.

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

Асинхронно возвращает элемент по указанному индексу в последовательности или значение по умолчанию, если индекс выходит за пределы диапазона.

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

Асинхронно возвращает первый элемент последовательности, удовлетворяющий указанному условию.

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

Асинхронно возвращает первый элемент последовательности.

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

Асинхронно возвращает первый элемент последовательности, удовлетворяющий указанному условию или значению по умолчанию, если такой элемент не найден.

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

Асинхронно возвращает первый элемент последовательности или значение по умолчанию, если последовательность не содержит элементов.

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

Асинхронно перечисляет результаты запроса и выполняет указанное действие с каждым элементом.

IgnoreAutoIncludes<TEntity>(IQueryable<TEntity>)

Указывает, что к текущему запросу LINQ Entity Framework не должны применяться переходы с неотложной загрузкой на уровне модели.

IgnoreQueryFilters<TEntity>(IQueryable<TEntity>)

Указывает, что к текущему запросу LINQ Entity Framework не должны применяться фильтры запросов сущностей на уровне модели.

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

Указывает связанные сущности для включения в результаты запроса. Включаемое свойство навигации указывается начиная с типа запрашиваемой сущности (TEntity). Дополнительные свойства навигации, которые необходимо включить, можно добавить, разделив их символом ..

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

Указывает связанные сущности для включения в результаты запроса. Включаемое свойство навигации указывается начиная с типа запрашиваемой сущности (TEntity). Если вы хотите включить дополнительные типы на основе свойств навигации включаемого типа, заключите вызов в цепочку ThenInclude<TEntity,TPreviousProperty,TProperty>(IIncludableQueryable<TEntity, IEnumerable<TPreviousProperty>>, Expression<Func<TPreviousProperty, TProperty>>) после этого вызова.

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

Асинхронно возвращает последний элемент последовательности, удовлетворяющий указанному условию.

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

Асинхронно возвращает последний элемент последовательности.

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

Асинхронно возвращает последний элемент последовательности, удовлетворяющий указанному условию или значению по умолчанию, если такой элемент не найден.

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

Асинхронно возвращает последний элемент последовательности или значение по умолчанию, если последовательность не содержит элементов.

Load<TSource>(IQueryable<TSource>)

Перечисляет запрос. При использовании Entity Framework результаты запроса загружаются в связанный контекст. Это эквивалентно вызову ToList и последующему исключению списка (без затрат на фактическое создание списка).

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

Асинхронно перечисляет запрос. При использовании Entity Framework результаты запроса загружаются в связанный контекст. Это эквивалентно вызову ToList и последующему исключению списка (без затрат на фактическое создание списка).

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

Асинхронно возвращает объект , Int64 представляющий количество элементов в последовательности, удовлетворяющих условию.

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

Асинхронно возвращает объект , Int64 представляющий общее количество элементов в последовательности.

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

Асинхронно возвращает максимальное значение последовательности.

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

Асинхронно вызывает функцию проекции для каждого элемента последовательности и возвращает максимальное результирующее значение.

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

Асинхронно возвращает минимальное значение последовательности.

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

Асинхронно вызывает функцию проекции для каждого элемента последовательности и возвращает минимальное результирующее значение.

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

Асинхронно возвращает единственный элемент последовательности, удовлетворяющий указанному условию, и создает исключение, если существует несколько таких элементов.

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

Асинхронно возвращает единственный элемент последовательности и создает исключение, если в последовательности нет ровно одного элемента.

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

Асинхронно возвращает единственный элемент последовательности, удовлетворяющий указанному условию или значению по умолчанию, если такого элемента не существует; Этот метод создает исключение, если условию удовлетворяет несколько элементов.

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

Асинхронно возвращает единственный элемент последовательности или значение по умолчанию, если последовательность пуста; Этот метод создает исключение, если в последовательности имеется несколько элементов.

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

Асинхронно вычисляет сумму последовательности значений, полученную путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет сумму последовательности значений, полученную путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет сумму последовательности значений, полученную путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет сумму последовательности значений, полученную путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет сумму последовательности значений, полученную путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет сумму последовательности значений, полученную путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет сумму последовательности значений, полученную путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет сумму последовательности значений, полученную путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет сумму последовательности значений, полученную путем вызова функции проекции для каждого элемента входной последовательности.

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

Асинхронно вычисляет сумму последовательности значений, полученную путем вызова функции проекции для каждого элемента входной последовательности.

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

Добавляет тег в коллекцию тегов, связанных с запросом EF LINQ. Теги — это заметки к запросу, которые могут предоставлять контекстную информацию трассировки в разных точках конвейера запросов.

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

Добавляет тег в коллекцию тегов, связанных с запросом EF LINQ, с именем исходного файла и строкой, в которой был вызван метод , который может предоставлять контекстную информацию трассировки в разных точках конвейера запросов.

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

Указывает дополнительные связанные данные для дальнейшего включения на основе только что включенного связанного типа.

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

Асинхронно создает массив из , IQueryable<T> перечисляя его асинхронно.

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

Dictionary<TKey,TValue> Создает из путем IQueryable<T> асинхронного перечисления в соответствии с указанной функцией селектора ключа и компаратором.

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

Создает из Dictionary<TKey,TValue>IQueryable<T> путем асинхронного перечисления в соответствии с указанной функцией селектора ключа.

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

Dictionary<TKey,TValue> Создает из путем IQueryable<T> асинхронного перечисления в соответствии с указанной функцией селектора ключей, функцией сравнения и функцией селектора элементов.

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

Dictionary<TKey,TValue> Создает из IQueryable<T> , перечисляя его асинхронно в соответствии с указанным селектором ключа и функцией селектора элементов.

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

Асинхронно создает из List<T> путем IQueryable<T> асинхронного перечисления.

AsSingleQuery<TEntity>(IQueryable<TEntity>)

Возвращает новый запрос, настроенный для загрузки коллекций в результатах запроса в одном запросе базы данных.

AsSplitQuery<TEntity>(IQueryable<TEntity>)

Возвращает новый запрос, настроенный для загрузки коллекций в результатах запроса с помощью отдельных запросов к базе данных.

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>(IQueryable<TEntity>, RawSqlString, Object[])
Является устаревшей..

Создает запрос LINQ на основе необработанного SQL-запроса.

Если поставщик базы данных поддерживает создание в предоставленном SQL, можно создать его поверх необработанного SQL-запроса с помощью операторов LINQ — context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name).

Как и в случае с любым API, который принимает SQL, важно параметризовать любые входные данные пользователя для защиты от атак путем внедрения кода 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>, FormattableString)
Является устаревшей..

Создает запрос LINQ на основе интерполированной строки, представляющей SQL-запрос.

Если поставщик базы данных поддерживает создание в предоставленном SQL, можно создать его поверх необработанного SQL-запроса с помощью операторов LINQ — context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name).

Как и в случае с любым API, который принимает SQL, важно параметризовать любые входные данные пользователя для защиты от атак путем внедрения кода SQL. В строку ЗАПРОСА SQL можно включить интерполированные заполнители параметров. Все значения интерполированных параметров, которые вы предоставляете, будут автоматически преобразованы в DbParameter — context.Blogs.FromSql($"SELECT * FROM [dbo].[SearchBlogs]({userSuppliedSearchTerm})").

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

Создает запрос LINQ на основе необработанного SQL-запроса.

Если поставщик базы данных поддерживает создание в предоставленном SQL, можно создать поверх необработанного SQL-запроса с помощью операторов LINQ — context.Blogs.FromSql("SELECT * FROM dbo.Blogs").OrderBy(b => b.Name).

Как и в случае с любым API, который принимает SQL, важно параметризовать любые входные данные пользователя для защиты от атак путем внедрения кода 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))

Применяется к