# OpcEncodingStackFrame Members

> Reference: Provides information about a OpcEncodingStackFrame, which represents the encoding / decoding operation performed on the encoding stack for the current encode / decode operation.

<dl class="api-definition">
<dt>Type</dt>
<dd><a href="./">OpcEncodingStackFrame</a></dd>
<dt>Namespace</dt>
<dd><a href="../namespaces/opc.uafx">Opc.UaFx</a></dd>
<dt>Assembly</dt>
<dd>Opc.UaFx.Advanced.dll</dd>
<dt>Package</dt>
<dd>Opc.UaFx.Advanced v2.59.0</dd>
<dt>Also in</dt>
<dd>Opc.UaFx.Client</dd>
</dl>

## Properties

### Data

Gets the data which is about to encode / decode.

<div class="api-signature" data-lang="csharp">

```csharp
public object Data { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property Data As Object
```

</div>

**Property value**

[Object](https://learn.microsoft.com/dotnet/api/system.object)

An [object](https://learn.microsoft.com/dotnet/api/system.object) instance which depends on the encoder / decoder used.

### Encoding

Gets the type of encoding supported by the encoder / decoder used.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcEncodingType Encoding { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property Encoding As OpcEncodingType
```

</div>

**Property value**

[OpcEncodingType](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingtype/)

One of the members defined by the [OpcEncodingType](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingtype/) enumeration.

### Exception

Gets the [Exception](https://learn.microsoft.com/dotnet/api/system.exception) created or caught during the encoding / decoding operation.

<div class="api-signature" data-lang="csharp">

```csharp
public Exception Exception { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property Exception As Exception
```

</div>

**Property value**

[Exception](https://learn.microsoft.com/dotnet/api/system.exception)

An instance of the [Exception](https://learn.microsoft.com/dotnet/api/system.exception) class or a null reference (Nothing in Visual Basic) in case there was no [Exception](https://learn.microsoft.com/dotnet/api/system.exception) encountered during the operation of this [OpcEncodingStackFrame](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingstackframe/).

### FieldName

Gets the name of the field of an [Instance](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingstackframe/members#instance) which is about to get encoded / decoded.

<div class="api-signature" data-lang="csharp">

```csharp
public string FieldName { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property FieldName As String
```

</div>

**Property value**

[String](https://learn.microsoft.com/dotnet/api/system.string)

The name of the field to encode / decode or a null reference (Nothing in Visual Basic) if there is no field name known by the encoder / decoder for the current operation of this [OpcEncodingStackFrame](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingstackframe/).

### FieldType

Gets the type of the field being encoded / decoded.

<div class="api-signature" data-lang="csharp">

```csharp
public Type FieldType { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property FieldType As Type
```

</div>

**Property value**

[Type](https://learn.microsoft.com/dotnet/api/system.type)

The [Type](https://learn.microsoft.com/dotnet/api/system.type) of the field to encode / decode or a null reference (Nothing in Visual Basic) if there is no [Type](https://learn.microsoft.com/dotnet/api/system.type) known by the encoder / decoder for the current operation of this [OpcEncodingStackFrame](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingstackframe/).

### Instance

Gets the [object](https://learn.microsoft.com/dotnet/api/system.object) instance its data is being encoded / decoded.

<div class="api-signature" data-lang="csharp">

```csharp
public object Instance { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property Instance As Object
```

</div>

**Property value**

[Object](https://learn.microsoft.com/dotnet/api/system.object)

An [object](https://learn.microsoft.com/dotnet/api/system.object) instance or a null reference (Nothing in Visual Basic) in case there the encoder / decoder is not about to encode / decode an instance.

### Message

Gets the description of the outcome of the current encoding / decoding operation.

<div class="api-signature" data-lang="csharp">

```csharp
public string Message { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property Message As String
```

</div>

**Property value**

[String](https://learn.microsoft.com/dotnet/api/system.string)

The description of the outcome of the current encoding / decoding operation or a null reference (Nothing in Visual Basic) in the case there the encoding / decoding operation does not offer a description for its outcome.

### MethodName

Gets the name of the encoder / decoder method in which the frame is executing.

<div class="api-signature" data-lang="csharp">

```csharp
public string MethodName { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property MethodName As String
```

</div>

**Property value**

[String](https://learn.microsoft.com/dotnet/api/system.string)

The name of the method in which the frame is executing.

### Position

Gets the zero-based position of the encoder / decoder within its underlying stream during the operation of the current [OpcEncodingStackFrame](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingstackframe/).

<div class="api-signature" data-lang="csharp">

```csharp
public long Position { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property Position As Long
```

</div>

**Property value**

[Int64](https://learn.microsoft.com/dotnet/api/system.int64)

The position within the stream of the encoder / decoder.

### TypeId

Gets the identifier of the type being encoded / decoded.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcNodeId TypeId { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property TypeId As OpcNodeId
```

</div>

**Property value**

[OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/)

An instance of the [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) class which identifies the type being encoded / decoded by the operation of the current [OpcEncodingStackFrame](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingstackframe/) or a null reference (Nothing in Visual Basic) if the operation is in a context there a type identifier does not apply to the current operation of the [OpcEncodingStackFrame](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingstackframe/).

### TypeIdAbsolute

Gets the absolute [TypeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingstackframe/members#typeid) (if available).

<div class="api-signature" data-lang="csharp">

```csharp
public OpcNodeId TypeIdAbsolute { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property TypeIdAbsolute As OpcNodeId
```

</div>

**Property value**

[OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/)

The absolute [TypeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingstackframe/members#typeid) in case there the [TypeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingstackframe/members#typeid) has been resolved or a null reference (Nothing in Visual Basic) if the [TypeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingstackframe/members#typeid) hasn't been resolved.

## Methods

### ToString

<span class="api-meta">override</span>

Returns a readable representation of the stack frame.

<div class="api-signature" data-lang="csharp">

```csharp
public override string ToString()
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Overrides Function ToString() As String
```

</div>

**Returns**

[String](https://learn.microsoft.com/dotnet/api/system.string)

A [string](https://learn.microsoft.com/dotnet/api/system.string) representing the information of the current [OpcEncodingStackFrame](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcencodingstackframe/) in a readable way.

**Overrides**

[ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)
