# IOpcBrowseService Members

<dl class="api-definition">
<dt>Type</dt>
<dd><a href="./">IOpcBrowseService</a></dd>
<dt>Namespace</dt>
<dd><a href="../namespaces/opc.uafx.services">Opc.UaFx.Services</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>

Inherits members from [IOpcService&lt;OpcBrowseResponse, OpcBrowseRequest&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.services.iopcservice-2/members).

## Properties

### MaxNodesPerBrowse

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

Gets or sets the maximum number of nodes which shall be browsed using a single browse request. This number indirectly defines the number of requests used to send a specific number of browse requests to the server.

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

```csharp
uint? MaxNodesPerBrowse { get; set; }
```

</div>

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

```vbnet
Property MaxNodesPerBrowse As UInteger?
```

</div>

**Property value**

[Nullable](https://learn.microsoft.com/dotnet/api/system.nullable-1)&lt;[UInt32](https://learn.microsoft.com/dotnet/api/system.uint32)&gt;

The absolute number of browse commands which shall be send to the server per request or a null reference (Nothing in Visual Basic). In case there a specific number of nodes is used, a request with more commands as the [MaxNodesPerBrowse](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.services.iopcbrowseservice/members#maxnodesperbrowse) is partitioned into multiple requests and the responses of them are accumulated. The default value of this property is a null reference (Nothing in Visual Basic) and means that all commands defined are send to the server using the server defined number of nodes per browse request.

### UsedMaxNodesPerBrowse

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

Gets the maximum number of nodes which are browsed using a single browse request. This property will use either the [MaxNodesPerBrowse](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.services.iopcbrowseservice/members#maxnodesperbrowse) or the maximum number of nodes which can be browsed in one request as defined by the server. The lowest number of nodes is used to partition the commands to execute into multiple browse requests.

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

```csharp
uint? UsedMaxNodesPerBrowse { get; }
```

</div>

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

```vbnet
ReadOnly Property UsedMaxNodesPerBrowse As UInteger?
```

</div>

**Property value**

[Nullable](https://learn.microsoft.com/dotnet/api/system.nullable-1)&lt;[UInt32](https://learn.microsoft.com/dotnet/api/system.uint32)&gt;

In case there has already been one browse attempt (with more than one browse command) the definite number of commands per browse request; otherwise a null reference (Nothing in Visual Basic).

## Methods

### Browse

<span class="api-meta">4 overloads · since v2.9</span>

| Overload | Description |
|---|---|
| [Browse(IEnumerable&lt;OpcBrowseNode&gt;)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.services.iopcbrowseservice/members#browse-system-collections-generic-ienumerable-of-opc-uafx-opcbrowsenode)<span class="api-meta">since v2.9</span> |  |
| [Browse(params OpcBrowseNode\[\])](#browse-opc-uafx-opcbrowsenode-array)<span class="api-meta">since v2.9</span> |  |
| [Browse(OpcViewDescription, IEnumerable&lt;OpcBrowseNode&gt;)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.services.iopcbrowseservice/members#browse-opc-uafx-opcviewdescription-system-collections-generic-ienumerable-of-opc-uafx-opcbrowsenode)<span class="api-meta">since v2.9</span> |  |
| [Browse(OpcViewDescription, params OpcBrowseNode\[\])](#browse-opc-uafx-opcviewdescription-opc-uafx-opcbrowsenode-array)<span class="api-meta">since v2.9</span> |  |

**Exceptions (all overloads)**

| Exception | Condition |
|---|---|
| [ArgumentNullException](https://learn.microsoft.com/dotnet/api/system.argumentnullexception) |  |
| [InvalidOperationException](https://learn.microsoft.com/dotnet/api/system.invalidoperationexception) |  |
| [OpcException](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcexception/) |  |

#### Browse(IEnumerable&lt;OpcBrowseNode&gt;)

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

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

```csharp
BrowseResultCollection Browse(IEnumerable<OpcBrowseNode> commands)
```

</div>

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

```vbnet
<CLSCompliant(False)>
Function Browse(
    commands As IEnumerable(Of OpcBrowseNode)) As BrowseResultCollection
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `commands` | [IEnumerable](https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1)&lt;[OpcBrowseNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcbrowsenode/)&gt; |  |

**Returns**

<abbr title="OPC Foundation stack type, not documented here: Opc.Ua.BrowseResultCollection">BrowseResultCollection</abbr>

#### Browse(params OpcBrowseNode\[\])

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

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

```csharp
BrowseResultCollection Browse(params OpcBrowseNode[] commands)
```

</div>

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

```vbnet
<CLSCompliant(False)>
Function Browse(
    ParamArray commands As OpcBrowseNode()) As BrowseResultCollection
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `commands` | params [OpcBrowseNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcbrowsenode/)[] |  |

**Returns**

<abbr title="OPC Foundation stack type, not documented here: Opc.Ua.BrowseResultCollection">BrowseResultCollection</abbr>

#### Browse(OpcViewDescription, IEnumerable&lt;OpcBrowseNode&gt;)

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

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

```csharp
BrowseResultCollection Browse(
    OpcViewDescription view,
    IEnumerable<OpcBrowseNode> commands)
```

</div>

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

```vbnet
<CLSCompliant(False)>
Function Browse(
    view As OpcViewDescription,
    commands As IEnumerable(Of OpcBrowseNode)) As BrowseResultCollection
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `view` | [OpcViewDescription](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcviewdescription/) |  |
| `commands` | [IEnumerable](https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1)&lt;[OpcBrowseNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcbrowsenode/)&gt; |  |

**Returns**

<abbr title="OPC Foundation stack type, not documented here: Opc.Ua.BrowseResultCollection">BrowseResultCollection</abbr>

#### Browse(OpcViewDescription, params OpcBrowseNode\[\])

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

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

```csharp
BrowseResultCollection Browse(
    OpcViewDescription view,
    params OpcBrowseNode[] commands)
```

</div>

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

```vbnet
<CLSCompliant(False)>
Function Browse(
    view As OpcViewDescription,
    ParamArray commands As OpcBrowseNode()) As BrowseResultCollection
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `view` | [OpcViewDescription](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcviewdescription/) |  |
| `commands` | params [OpcBrowseNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcbrowsenode/)[] |  |

**Returns**

<abbr title="OPC Foundation stack type, not documented here: Opc.Ua.BrowseResultCollection">BrowseResultCollection</abbr>
