Table of Contents

Class ExpressionExtensions

Namespace
Microsoft.EntityFrameworkCore.Internal
Assembly
Microsoft.EntityFrameworkCore.dll

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public static class ExpressionExtensions
Inheritance
ExpressionExtensions
Inherited Members

Methods

BuildPredicate(IReadOnlyList<IReadOnlyProperty>, ValueBuffer, ParameterExpression)

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public static Expression BuildPredicate(IReadOnlyList<IReadOnlyProperty> keyProperties, ValueBuffer keyValues, ParameterExpression entityParameter)

Parameters

keyProperties IReadOnlyList<IReadOnlyProperty>
keyValues ValueBuffer
entityParameter ParameterExpression

Returns

Expression

GetLambdaOrNull(Expression)

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public static LambdaExpression? GetLambdaOrNull(this Expression expression)

Parameters

expression Expression

Returns

LambdaExpression

IsLogicalNot(UnaryExpression)

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public static bool IsLogicalNot(this UnaryExpression sqlUnaryExpression)

Parameters

sqlUnaryExpression UnaryExpression

Returns

bool

IsLogicalOperation(Expression)

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public static bool IsLogicalOperation(this Expression expression)

Parameters

expression Expression

Returns

bool

MakeHasSentinel(Expression, IReadOnlyPropertyBase?)

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public static Expression MakeHasSentinel(this Expression currentValueExpression, IReadOnlyPropertyBase? propertyBase)

Parameters

currentValueExpression Expression
propertyBase IReadOnlyPropertyBase

Returns

Expression

MatchMemberAccessList<TMemberInfo>(LambdaExpression, Func<Expression, Expression, TMemberInfo?>)

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public static IReadOnlyList<TMemberInfo>? MatchMemberAccessList<TMemberInfo>(this LambdaExpression lambdaExpression, Func<Expression, Expression, TMemberInfo?> memberMatcher) where TMemberInfo : MemberInfo

Parameters

lambdaExpression LambdaExpression
memberMatcher Func<Expression, Expression, TMemberInfo>

Returns

IReadOnlyList<TMemberInfo>

Type Parameters

TMemberInfo

MatchSimpleMemberAccess<TMemberInfo>(Expression, Expression)

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public static TMemberInfo? MatchSimpleMemberAccess<TMemberInfo>(this Expression parameterExpression, Expression memberAccessExpression) where TMemberInfo : MemberInfo

Parameters

parameterExpression Expression
memberAccessExpression Expression

Returns

TMemberInfo

Type Parameters

TMemberInfo

RemoveTypeAs(Expression?)

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public static Expression? RemoveTypeAs(this Expression? expression)

Parameters

expression Expression

Returns

Expression