> ## Documentation Index
> Fetch the complete documentation index at: https://easyaf.nimbleapps.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# QueryExpressionContext

> Represents context for a query expression that             is used during query expression processing.

## Definition

**Assembly:** Microsoft.Restier.Core.dll

**Namespace:** Microsoft.Restier.Core.Query

**Inheritance:** System.Object

## Syntax

```csharp theme={"dark"}
Microsoft.Restier.Core.Query.QueryExpressionContext
```

## Summary

Represents context for a query expression that
is used during query expression processing.

## Constructors

### &#x20;.ctor

Initializes a new instance of the [QueryExpressionContext](https://easyaf.nimbleapps.cloud/restier/api-reference/Microsoft/Restier/Core/Query/QueryExpressionContext.md) class.

#### Syntax

```csharp theme={"dark"}
public QueryExpressionContext(Microsoft.Restier.Core.Query.QueryContext queryContext)
```

#### Parameters

| Name | Type | Description |
| - | - | - |
| `queryContext` | `Microsoft.Restier.Core.Query.QueryContext` | A query context. |

### &#x20;.ctor Inherited

> [!NOTE]
>
> Inherited from `object`

#### Syntax

```csharp theme={"dark"}
public Object()
```

## Properties

### &#x20;AfterNestedVisitCallback

Gets or sets an action that is invoked after an
expanded or filtered expression has been visited.

#### Syntax

```csharp theme={"dark"}
public System.Action AfterNestedVisitCallback { get; set; }
```

#### Property Value

Type: `System.Action`

### &#x20;ModelReference

Gets a reference to the model element
that represents the visited node.

#### Syntax

```csharp theme={"dark"}
public Microsoft.Restier.Core.Query.QueryModelReference ModelReference { get; }
```

#### Property Value

Type: `Microsoft.Restier.Core.Query.QueryModelReference`

### &#x20;QueryContext

Gets the query context associated with this context.

#### Syntax

```csharp theme={"dark"}
public Microsoft.Restier.Core.Query.QueryContext QueryContext { get; private set; }
```

#### Property Value

Type: `Microsoft.Restier.Core.Query.QueryContext`

### &#x20;VisitedNode

Gets the expression node that is being visited.

#### Syntax

```csharp theme={"dark"}
public System.Linq.Expressions.Expression VisitedNode { get; }
```

#### Property Value

Type: `System.Linq.Expressions.Expression`

## Methods

### &#x20;Equals Inherited Virtual

> [!NOTE]
>
> Inherited from `object`

#### Syntax

```csharp theme={"dark"}
public virtual bool Equals(object obj)
```

#### Parameters

| Name | Type | Description |
| - | - | - |
| `obj` | `object?` | - |

#### Returns

Type: `bool`

### &#x20;Equals Inherited

> [!NOTE]
>
> Inherited from `object`

#### Syntax

```csharp theme={"dark"}
public static bool Equals(object objA, object objB)
```

#### Parameters

| Name | Type | Description |
| - | - | - |
| `objA` | `object?` | - |
| `objB` | `object?` | - |

#### Returns

Type: `bool`

### &#x20;GetHashCode Inherited Virtual

> [!NOTE]
>
> Inherited from `object`

#### Syntax

```csharp theme={"dark"}
public virtual int GetHashCode()
```

#### Returns

Type: `int`

### &#x20;GetModelReferenceForNode

Gets a reference to the model element
that represents an expression node.

#### Syntax

```csharp theme={"dark"}
public Microsoft.Restier.Core.Query.QueryModelReference GetModelReferenceForNode(System.Linq.Expressions.Expression node)
```

#### Parameters

| Name | Type | Description |
| - | - | - |
| `node` | `System.Linq.Expressions.Expression` | An expression node. |

#### Returns

Type: `Microsoft.Restier.Core.Query.QueryModelReference`
A reference to the model element
that represents the expression node.

### &#x20;GetType Inherited

> [!NOTE]
>
> Inherited from `object`

#### Syntax

```csharp theme={"dark"}
public System.Type GetType()
```

#### Returns

Type: `System.Type`

### &#x20;MemberwiseClone Inherited

> [!NOTE]
>
> Inherited from `object`

#### Syntax

```csharp theme={"dark"}
protected internal object MemberwiseClone()
```

#### Returns

Type: `object`

### &#x20;PopVisitedNode

Pops a visited node.

#### Syntax

```csharp theme={"dark"}
public void PopVisitedNode()
```

### &#x20;PushVisitedNode

Pushes a visited node.

#### Syntax

```csharp theme={"dark"}
public void PushVisitedNode(System.Linq.Expressions.Expression visitedNode)
```

#### Parameters

| Name | Type | Description |
| - | - | - |
| `visitedNode` | `System.Linq.Expressions.Expression` | A visited node. |

### &#x20;ReferenceEquals Inherited

> [!NOTE]
>
> Inherited from `object`

#### Syntax

```csharp theme={"dark"}
public static bool ReferenceEquals(object objA, object objB)
```

#### Parameters

| Name | Type | Description |
| - | - | - |
| `objA` | `object?` | - |
| `objB` | `object?` | - |

#### Returns

Type: `bool`

### &#x20;ReplaceVisitedNode

Replaces the visited node.

#### Syntax

```csharp theme={"dark"}
public void ReplaceVisitedNode(System.Linq.Expressions.Expression visitedNode)
```

#### Parameters

| Name | Type | Description |
| - | - | - |
| `visitedNode` | `System.Linq.Expressions.Expression` | A new visited node. |

### &#x20;ToString Inherited Virtual

> [!NOTE]
>
> Inherited from `object`

#### Syntax

```csharp theme={"dark"}
public virtual string ToString()
```

#### Returns

Type: `string?`


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.