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


QueryableMethodTranslatingExpressionVisitor Класс

Определение

Класс, который преобразует запрашиваемые методы в запросе.

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

public abstract class QueryableMethodTranslatingExpressionVisitor : System.Linq.Expressions.ExpressionVisitor
type QueryableMethodTranslatingExpressionVisitor = class
    inherit ExpressionVisitor
Public MustInherit Class QueryableMethodTranslatingExpressionVisitor
Inherits ExpressionVisitor
Наследование
QueryableMethodTranslatingExpressionVisitor
Производный

Комментарии

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

Конструкторы

QueryableMethodTranslatingExpressionVisitor(QueryableMethodTranslatingExpressionVisitorDependencies, Boolean)

Класс, который преобразует запрашиваемые методы в запросе.

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

QueryableMethodTranslatingExpressionVisitor(QueryableMethodTranslatingExpressionVisitorDependencies, QueryCompilationContext, Boolean)

Создает новый экземпляр класса QueryableMethodTranslatingExpressionVisitor.

Свойства

Dependencies

Зависимости для этой службы.

QueryCompilationContext

Объект контекста компиляции запроса для текущей компиляции.

TranslationErrorDetails

Подробные сведения об ошибках, возникших во время перевода.

Методы

AddTranslationErrorDetails(String)

Добавляет подробные сведения об ошибках, возникших во время перевода.

CreateShapedQueryExpression(IEntityType)

Создает для ShapedQueryExpression заданного типа сущности.

CreateShapedQueryExpression(Type)
Устаревшие..

ShapedQueryExpression Создает для заданного типа, найдя его тип сущности в модели.

CreateSubqueryVisitor()

Создает посетителя, настроенного для преобразования вложенного запроса через TranslateSubquery(Expression).

MarkShaperNullable(Expression)

Помечает фигуру сущности в заданном выражении формировщика как допускающее значение NULL.

Translate(Expression)

Преобразует выражение в эквивалентное представление SQL.

TranslateAll(ShapedQueryExpression, LambdaExpression)

All<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) Преобразует метод по заданному источнику.

TranslateAny(ShapedQueryExpression, LambdaExpression)

Any<TSource>(IQueryable<TSource>) Преобразует метод и другие перегрузки по заданному источнику.

TranslateAverage(ShapedQueryExpression, LambdaExpression, Type)

Average(IQueryable<Decimal>) Преобразует метод и другие перегрузки по заданному источнику.

TranslateCast(ShapedQueryExpression, Type)

Cast<TResult>(IQueryable) Преобразует метод по заданному источнику.

TranslateConcat(ShapedQueryExpression, ShapedQueryExpression)

Concat<TSource>(IQueryable<TSource>, IEnumerable<TSource>) Преобразует метод по заданному источнику.

TranslateContains(ShapedQueryExpression, Expression)

Contains<TSource>(IQueryable<TSource>, TSource) Преобразует метод по заданному источнику.

TranslateCount(ShapedQueryExpression, LambdaExpression)

Count<TSource>(IQueryable<TSource>) Преобразует метод и другие перегрузки по заданному источнику.

TranslateDefaultIfEmpty(ShapedQueryExpression, Expression)

DefaultIfEmpty<TSource>(IQueryable<TSource>) Преобразует метод и другие перегрузки по заданному источнику.

TranslateDistinct(ShapedQueryExpression)

Distinct<TSource>(IQueryable<TSource>) Преобразует метод по заданному источнику.

TranslateElementAtOrDefault(ShapedQueryExpression, Expression, Boolean)

ElementAt<TSource>(IQueryable<TSource>, Int32) Преобразует метод или ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) по заданному источнику.

TranslateExcept(ShapedQueryExpression, ShapedQueryExpression)

Except<TSource>(IQueryable<TSource>, IEnumerable<TSource>) Преобразует метод по заданному источнику.

TranslateFirstOrDefault(ShapedQueryExpression, LambdaExpression, Type, Boolean)

First<TSource>(IQueryable<TSource>) Преобразует метод или FirstOrDefault<TSource>(IQueryable<TSource>) и другие их перегрузки на заданный источник.

TranslateGroupBy(ShapedQueryExpression, LambdaExpression, LambdaExpression, LambdaExpression)

GroupBy<TSource,TKey>(IQueryable<TSource>, Expression<Func<TSource,TKey>>) Преобразует метод и другие перегрузки по заданному источнику.

TranslateGroupJoin(ShapedQueryExpression, ShapedQueryExpression, LambdaExpression, LambdaExpression, LambdaExpression)

GroupJoin<TOuter,TInner,TKey,TResult>(IQueryable<TOuter>, IEnumerable<TInner>, Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>, Expression<Func<TOuter,IEnumerable<TInner>,TResult>>) Преобразует метод по заданному источнику.

TranslateIntersect(ShapedQueryExpression, ShapedQueryExpression)

Intersect<TSource>(IQueryable<TSource>, IEnumerable<TSource>) Преобразует метод по заданному источнику.

TranslateJoin(ShapedQueryExpression, ShapedQueryExpression, LambdaExpression, LambdaExpression, LambdaExpression)

Join<TOuter,TInner,TKey,TResult>(IQueryable<TOuter>, IEnumerable<TInner>, Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>, Expression<Func<TOuter,TInner,TResult>>) Преобразует метод по заданному источнику.

TranslateLastOrDefault(ShapedQueryExpression, LambdaExpression, Type, Boolean)

Last<TSource>(IQueryable<TSource>) Преобразует метод или LastOrDefault<TSource>(IQueryable<TSource>) и другие их перегрузки на заданный источник.

TranslateLeftJoin(ShapedQueryExpression, ShapedQueryExpression, LambdaExpression, LambdaExpression, LambdaExpression)

Переводит LeftJoin по заданному источнику.

TranslateLongCount(ShapedQueryExpression, LambdaExpression)

LongCount<TSource>(IQueryable<TSource>) Преобразует метод и другие перегрузки по заданному источнику.

TranslateMax(ShapedQueryExpression, LambdaExpression, Type)

Max<TSource>(IQueryable<TSource>) Преобразует метод и другие перегрузки по заданному источнику.

TranslateMin(ShapedQueryExpression, LambdaExpression, Type)

Min<TSource>(IQueryable<TSource>) Преобразует метод и другие перегрузки по заданному источнику.

TranslateOfType(ShapedQueryExpression, Type)

OfType<TResult>(IQueryable) Преобразует метод по заданному источнику.

TranslateOrderBy(ShapedQueryExpression, LambdaExpression, Boolean)

OrderBy<TSource,TKey>(IQueryable<TSource>, Expression<Func<TSource,TKey>>) Преобразует метод или OrderByDescending<TSource,TKey>(IQueryable<TSource>, Expression<Func<TSource,TKey>>) по заданному источнику.

TranslateResultSelectorForJoin(ShapedQueryExpression, LambdaExpression, Expression, Type)
Устаревшие..

Преобразует селектор результатов для операции соединения.

TranslateReverse(ShapedQueryExpression)

Reverse<TSource>(IQueryable<TSource>) Преобразует метод по заданному источнику.

TranslateSelect(ShapedQueryExpression, LambdaExpression)

Select<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) Преобразует метод по заданному источнику.

TranslateSelectMany(ShapedQueryExpression, LambdaExpression)

SelectMany<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,IEnumerable<TResult>>>) Преобразует метод по заданному источнику.

TranslateSelectMany(ShapedQueryExpression, LambdaExpression, LambdaExpression)

SelectMany<TSource,TCollection,TResult>(IQueryable<TSource>, Expression<Func<TSource, IEnumerable<TCollection>>>, Expression<Func<TSource,TCollection, TResult>>) Преобразует метод по заданному источнику.

TranslateSingleOrDefault(ShapedQueryExpression, LambdaExpression, Type, Boolean)

Single<TSource>(IQueryable<TSource>) Преобразует метод или SingleOrDefault<TSource>(IQueryable<TSource>) и другие их перегрузки на заданный источник.

TranslateSkip(ShapedQueryExpression, Expression)

Skip<TSource>(IQueryable<TSource>, Int32) Преобразует метод по заданному источнику.

TranslateSkipWhile(ShapedQueryExpression, LambdaExpression)

SkipWhile<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) Преобразует метод по заданному источнику.

TranslateSubquery(Expression)

Преобразует заданный вложенный запрос.

TranslateSum(ShapedQueryExpression, LambdaExpression, Type)

Sum(IQueryable<Decimal>) Преобразует метод и другие перегрузки по заданному источнику.

TranslateTake(ShapedQueryExpression, Expression)

Take<TSource>(IQueryable<TSource>, Int32) Преобразует метод по заданному источнику.

TranslateTakeWhile(ShapedQueryExpression, LambdaExpression)

TakeWhile<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) Преобразует метод по заданному источнику.

TranslateThenBy(ShapedQueryExpression, LambdaExpression, Boolean)

ThenBy<TSource,TKey>(IOrderedQueryable<TSource>, Expression<Func<TSource,TKey>>) Преобразует метод или ThenByDescending<TSource,TKey>(IOrderedQueryable<TSource>, Expression<Func<TSource,TKey>>) по заданному источнику.

TranslateUnion(ShapedQueryExpression, ShapedQueryExpression)

Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) Преобразует метод по заданному источнику.

TranslateWhere(ShapedQueryExpression, LambdaExpression)

Where<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) Преобразует метод по заданному источнику.

VisitConstant(ConstantExpression)

Класс, который преобразует запрашиваемые методы в запросе.

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

VisitExtension(Expression)

Класс, который преобразует запрашиваемые методы в запросе.

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

VisitMethodCall(MethodCallExpression)

Класс, который преобразует запрашиваемые методы в запросе.

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

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