# Class NpgsqlLTreeTranslator

Namespace
  Npgsql.EntityFrameworkCore.PostgreSQL.Query.ExpressionTranslators.Internal

Assembly
  Npgsql.EntityFrameworkCore.PostgreSQL.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 class NpgsqlLTreeTranslator : IMethodCallTranslator, IMemberTranslator

Inheritance
  object
  NpgsqlLTreeTranslator

Implements
  IMethodCallTranslator
  IMemberTranslator

Inherited Members
  object.Equals(object)
  object.Equals(object, object)
  object.GetHashCode()
  object.GetType()
  object.MemberwiseClone()
  object.ReferenceEquals(object, object)
  object.ToString()

## Constructors

### NpgsqlLTreeTranslator(IRelationalTypeMappingSource, NpgsqlSqlExpressionFactory, IModel)

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 NpgsqlLTreeTranslator(IRelationalTypeMappingSource typeMappingSource, NpgsqlSqlExpressionFactory sqlExpressionFactory, IModel model)

#### Parameters

`typeMappingSource` IRelationalTypeMappingSource
`sqlExpressionFactory` NpgsqlSqlExpressionFactory
`model` IModel

## Methods

### Translate(SqlExpression?, MemberInfo, Type, IDiagnosticsLogger<Query>)

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 virtual SqlExpression? Translate(SqlExpression? instance, MemberInfo member, Type returnType, IDiagnosticsLogger<DbLoggerCategory.Query> logger)

#### Parameters

`instance` SqlExpression
`member` MemberInfo
`returnType` Type
`logger` IDiagnosticsLogger<DbLoggerCategory.Query>

#### Returns

SqlExpression

### Translate(SqlExpression?, MethodInfo, IReadOnlyList<SqlExpression>, IDiagnosticsLogger<Query>)

Translates a LINQ MethodCallExpression to a SQL equivalent.

    public virtual SqlExpression? Translate(SqlExpression? instance, MethodInfo method, IReadOnlyList<SqlExpression> arguments, IDiagnosticsLogger<DbLoggerCategory.Query> logger)

#### Parameters

`instance` SqlExpression

  A SQL representation of Object.

`method` MethodInfo

  The method info from Method.

`arguments` IReadOnlyList<SqlExpression>

  SQL representations of Arguments.

`logger` IDiagnosticsLogger<DbLoggerCategory.Query>

  The query logger to use.

#### Returns

SqlExpression

  A SQL translation of the MethodCallExpression.