# OpcViewDescription Members

> Reference: Represents the view of the address space to browse, as defined by the ViewDescription of OPC UA.

<dl class="api-definition">
<dt>Type</dt>
<dd><a href="./">OpcViewDescription</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>

## Constructors

### OpcViewDescription

<span class="api-meta">3 overloads · since v2.58</span>

| Overload | Description |
|---|---|
| [OpcViewDescription(OpcNodeId)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcviewdescription/members#opcviewdescription-opc-uafx-opcnodeid)<span class="api-meta">since v2.58</span> | Initializes a new instance of the [OpcViewDescription](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcviewdescription/) class which describes the current version of the view identified by `viewId`. |
| [OpcViewDescription(OpcNodeId, DateTime)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcviewdescription/members#opcviewdescription-opc-uafx-opcnodeid-system-datetime)<span class="api-meta">since v2.58</span> | Initializes a new instance of the [OpcViewDescription](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcviewdescription/) class which describes the version of the view identified by `viewId` that was current at the `timestamp`. |
| [OpcViewDescription(OpcNodeId, uint)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcviewdescription/members#opcviewdescription-opc-uafx-opcnodeid-system-uint32)<span class="api-meta">since v2.58</span> | Initializes a new instance of the [OpcViewDescription](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcviewdescription/) class which describes the version `viewVersion` of the view identified by `viewId`. |

**Exceptions (all overloads)**

| Exception | Condition |
|---|---|
| [ArgumentNullException](https://learn.microsoft.com/dotnet/api/system.argumentnullexception) | The `viewId` is a null reference (Nothing in Visual Basic). |

#### OpcViewDescription(OpcNodeId)

<span class="api-meta">since v2.58</span>

Initializes a new instance of the [OpcViewDescription](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcviewdescription/) class which describes the current version of the view identified by `viewId`.

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

```csharp
public OpcViewDescription(OpcNodeId viewId)
```

</div>

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

```vbnet
Public Sub New(viewId As OpcNodeId)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `viewId` | [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) | The [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) of the view node. |

#### OpcViewDescription(OpcNodeId, DateTime)

<span class="api-meta">since v2.58</span>

Initializes a new instance of the [OpcViewDescription](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcviewdescription/) class which describes the version of the view identified by `viewId` that was current at the `timestamp`.

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

```csharp
public OpcViewDescription(OpcNodeId viewId, DateTime timestamp)
```

</div>

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

```vbnet
Public Sub New(viewId As OpcNodeId, timestamp As Date)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `viewId` | [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) | The [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) of the view node. |
| `timestamp` | [DateTime](https://learn.microsoft.com/dotnet/api/system.datetime) | The time of the version to browse. The server uses the version created last before that time. |

#### OpcViewDescription(OpcNodeId, uint)

<span class="api-meta">since v2.58</span>

Initializes a new instance of the [OpcViewDescription](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcviewdescription/) class which describes the version `viewVersion` of the view identified by `viewId`.

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

```csharp
public OpcViewDescription(OpcNodeId viewId, uint viewVersion)
```

</div>

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

```vbnet
Public Sub New(viewId As OpcNodeId, viewVersion As UInteger)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `viewId` | [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) | The [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) of the view node. |
| `viewVersion` | [UInt32](https://learn.microsoft.com/dotnet/api/system.uint32) | The version of the view to browse, as stated by the ViewVersion property of the view node. |

## Fields

### Default

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

Describes the whole address space instead of a view.

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

```csharp
public static readonly OpcViewDescription Default
```

</div>

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

```vbnet
Public Shared ReadOnly [Default] As OpcViewDescription
```

</div>

**Field value**

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

## Properties

### Timestamp

Gets the time which selects the version of the view to browse.

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

```csharp
public DateTime Timestamp { get; }
```

</div>

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

```vbnet
Public ReadOnly Property Timestamp As Date
```

</div>

**Property value**

[DateTime](https://learn.microsoft.com/dotnet/api/system.datetime)

The time which selects the version of the view, or [MinValue](https://learn.microsoft.com/dotnet/api/system.datetime.minvalue) if the version is not selected by time.

### ViewId

Gets the identifier of the view to browse.

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

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

</div>

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

```vbnet
Public ReadOnly Property ViewId As OpcNodeId
```

</div>

**Property value**

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

The identifier of the view, or a null reference (Nothing in Visual Basic) or a null identifier (see [IsNullOrEmpty](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/members#isnullorempty)) if the entire address space is browsed.

### ViewVersion

Gets the version of the view to browse.

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

```csharp
public uint ViewVersion { get; }
```

</div>

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

```vbnet
Public ReadOnly Property ViewVersion As UInteger
```

</div>

**Property value**

[UInt32](https://learn.microsoft.com/dotnet/api/system.uint32)

The version of the view, or zero if the version is not selected by number.
