# OpcClassicInterface Members

> Reference: Represents an interface specification of OPC Classic (e.g. OPC Data Access 2.0) which an OPC Classic server implements (see OpcClassicInterfaces).

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

## Constructors

### OpcClassicInterface

Initializes a new instance of the [OpcClassicInterface](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.classic.opcclassicinterface/) class using the specified `category`, `name`, `identifier` and `version`.

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

```csharp
public OpcClassicInterface(
    OpcClassicInterfaceCategory category,
    string name,
    Guid identifier,
    Version version)
```

</div>

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

```vbnet
Public Sub New(
    category As OpcClassicInterfaceCategory,
    name As String,
    identifier As Guid,
    version As Version)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `category` | [OpcClassicInterfaceCategory](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.classic.opcclassicinterfacecategory/) | One of the members defined by the [OpcClassicInterfaceCategory](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.classic.opcclassicinterfacecategory/) enumeration. |
| `name` | [String](https://learn.microsoft.com/dotnet/api/system.string) | The name of the interface specification, or a null reference (Nothing in Visual Basic) or an empty string to use the category and the version as the name (e.g. "DataAccess 2.0"). |
| `identifier` | [Guid](https://learn.microsoft.com/dotnet/api/system.guid) | The identifier of the interface specification. |
| `version` | [Version](https://learn.microsoft.com/dotnet/api/system.version) | The version of the interface specification, or a null reference (Nothing in Visual Basic) for the version 1.0. |

## Properties

### Category

Gets the category of the interface specification.

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

```csharp
public OpcClassicInterfaceCategory Category { get; }
```

</div>

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

```vbnet
Public ReadOnly Property Category As OpcClassicInterfaceCategory
```

</div>

**Property value**

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

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

### Identifier

Gets the identifier of the interface specification.

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

```csharp
public Guid Identifier { get; }
```

</div>

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

```vbnet
Public ReadOnly Property Identifier As Guid
```

</div>

**Property value**

[Guid](https://learn.microsoft.com/dotnet/api/system.guid)

The [Guid](https://learn.microsoft.com/dotnet/api/system.guid) which identifies the interface specification.

### Name

Gets the name of the interface specification.

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

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

</div>

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

```vbnet
Public ReadOnly Property Name As String
```

</div>

**Property value**

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

The human readable name of the interface specification.

### ShortName

Gets the short name of the interface specification.

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

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

</div>

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

```vbnet
Public ReadOnly Property ShortName As String
```

</div>

**Property value**

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

The abbreviation of the category ("AE", "DA" or "HDA") followed by the major and minor version, e.g. "DA20".

### Version

Gets the version of the interface specification.

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

```csharp
public Version Version { get; }
```

</div>

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

```vbnet
Public ReadOnly Property Version As Version
```

</div>

**Property value**

[Version](https://learn.microsoft.com/dotnet/api/system.version)

The [Version](https://learn.microsoft.com/dotnet/api/system.version) of the interface specification.

## Methods

### ToString

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

Returns the [Name](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.classic.opcclassicinterface/members#name) of the interface specification.

<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)

The [Name](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.classic.opcclassicinterface/members#name) of the interface specification.

**Overrides**

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