Class AggregateClassification
Public classification of an expression as an aggregate (vs. scalar/window). Single implementation
shared by the engine and external operators; aggregate FILTER/DISTINCT arguments
stay opaque. No duplicated magic-name list and no registry.
public static class AggregateClassification
- Inheritance
-
AggregateClassification
- Inherited Members
Methods
IsAdvancedAggregateMethod(MethodCallExpression)
Returns true when node is an advanced aggregate method.
public static bool IsAdvancedAggregateMethod(MethodCallExpression node)
Parameters
nodeMethodCallExpression
Returns
IsAggregate(Expression?)
Returns true when expression is an aggregate call.
public static bool IsAggregate(Expression? expression)
Parameters
expressionExpression
Returns
IsSingleColumnProjection(Type)
Returns true when type is a single-column projection.
public static bool IsSingleColumnProjection(Type type)
Parameters
typeType
Returns
IsWindow(Expression?)
Returns true when expression is a window function call.
public static bool IsWindow(Expression? expression)
Parameters
expressionExpression
Returns
MapWindowFunctionName(string)
Maps a method name to a window function name, or null when it is not a window.
public static string? MapWindowFunctionName(string methodName)
Parameters
methodNamestring
Returns
ResolveSqlFunctionAttribute(MethodInfo)
Resolves the effective SqlFunctionAttribute for method.
public static SqlFunctionAttribute? ResolveSqlFunctionAttribute(MethodInfo method)
Parameters
methodMethodInfo
Returns
UnwrapConvert(Expression)
Unwraps a convert expression.
public static Expression UnwrapConvert(Expression expression)
Parameters
expressionExpression