Table of Contents

Class Sql.ExtensionAttribute

Namespace
LinqToDB
Assembly
linq2db.dll
[AttributeUsage(AttributeTargets.Method|AttributeTargets.Property, AllowMultiple = true)]
public class Sql.ExtensionAttribute : Sql.ExpressionAttribute, _Attribute
Inheritance
object
Sql.ExtensionAttribute
Implements
Inherited Members
Extension Methods

Constructors

ExtensionAttribute(string)

public ExtensionAttribute(string expression)

Parameters

expression string

ExtensionAttribute(string, string)

public ExtensionAttribute(string configuration, string expression)

Parameters

configuration string
expression string

ExtensionAttribute(string, Type)

public ExtensionAttribute(string configuration, Type builderType)

Parameters

configuration string
builderType Type

ExtensionAttribute(Type)

public ExtensionAttribute(Type builderType)

Parameters

builderType Type

Properties

BuilderType

public Type? BuilderType { get; set; }

Property Value

Type

BuilderValue

public object? BuilderValue { get; set; }

Property Value

object

ChainPrecedence

Defines in which order process extensions. Items will be ordered Descending.

public int ChainPrecedence { get; set; }

Property Value

int

TokenName

public string? TokenName { get; set; }

Property Value

string

Methods

BuildFunctionsChain<TContext>(TContext, IDataContext, IExpressionEvaluator, SelectQuery, Expression, ConvertFunc<TContext>, out Expression?)

protected List<Sql.SqlExtensionParam>? BuildFunctionsChain<TContext>(TContext context, IDataContext dataContext, IExpressionEvaluator evaluator, SelectQuery query, Expression expr, Sql.ExpressionAttribute.ConvertFunc<TContext> converter, out Expression? error)

Parameters

context TContext
dataContext IDataContext
evaluator IExpressionEvaluator
query SelectQuery
expr Expression
converter Sql.ExpressionAttribute.ConvertFunc<TContext>
error Expression

Returns

List<Sql.SqlExtensionParam>

Type Parameters

TContext

BuildSqlExpression(MappingSchema, SelectQuery, SqlExtension, Type, int, SqlFlags, bool?, IsNullableType)

public static Expression BuildSqlExpression(MappingSchema mappingSchema, SelectQuery query, Sql.SqlExtension root, Type systemType, int precedence, SqlFlags flags, bool? canBeNull, Sql.IsNullableType isNullable)

Parameters

mappingSchema MappingSchema
query SelectQuery
root Sql.SqlExtension
systemType Type
precedence int
flags SqlFlags
canBeNull bool?
isNullable Sql.IsNullableType

Returns

Expression

ExcludeExtensionChain(MappingSchema, Expression, out bool)

public static Expression ExcludeExtensionChain(MappingSchema mapping, Expression expr, out bool isQueryable)

Parameters

mapping MappingSchema
expr Expression
isQueryable bool

Returns

Expression

GetExpression<TContext>(TContext, IDataContext, IExpressionEvaluator, SelectQuery, Expression, ConvertFunc<TContext>)

public override Expression GetExpression<TContext>(TContext context, IDataContext dataContext, IExpressionEvaluator evaluator, SelectQuery query, Expression expression, Sql.ExpressionAttribute.ConvertFunc<TContext> converter)

Parameters

context TContext
dataContext IDataContext
evaluator IExpressionEvaluator
query SelectQuery
expression Expression
converter Sql.ExpressionAttribute.ConvertFunc<TContext>

Returns

Expression

Type Parameters

TContext

GetExtensionAttributes(Expression, MappingSchema, bool)

public static Sql.ExtensionAttribute[] GetExtensionAttributes(Expression expression, MappingSchema mapping, bool forFirstConfiguration = true)

Parameters

expression Expression
mapping MappingSchema
forFirstConfiguration bool

Returns

ExtensionAttribute[]

GetObjectID()

Returns mapping attribute id, based on all attribute options.

public override string GetObjectID()

Returns

string