---
title: SAIF.Framework.DNS API reference
summary: Index of all public types in this library.
status: draft
owner: <owner>
last_reviewed: 2026-07-23
library: SAIF.Framework.DNS
reference_type: package
---

# SAIF.Framework.DNS API reference

This page lists all public types exposed by `SAIF.Framework.DNS`. Each type links to its full API reference page.

## Types

| Type | Kind | Namespace | Purpose |
| --- | --- | --- | --- |
| [Resolver](SAIF.Framework.DNS/Resolver.md) | Class | `SAIF.Framework.DNS` | Static entry point for DNS lookups; sends requests over UDP and returns parsed responses. |
| [Request](SAIF.Framework.DNS/Request.md) | Class | `SAIF.Framework.DNS` | Builds a DNS request message from one or more `Question` objects. |
| [Response](SAIF.Framework.DNS/Response.md) | Class | `SAIF.Framework.DNS` | Parses a raw DNS reply byte array into a structured set of questions and resource records. |
| [Question](SAIF.Framework.DNS/Question.md) | Class | `SAIF.Framework.DNS` | Represents a single DNS query (domain, type, class). |
| [ResourceRecord](SAIF.Framework.DNS/ResourceRecord.md) | Class | `SAIF.Framework.DNS` | Base parser for RFC1035 resource records; also defines the `Answer`, `NameServer`, and `AdditionalRecord` subtypes. |
| [Answer](SAIF.Framework.DNS/Answer.md) | Class | `SAIF.Framework.DNS` | `ResourceRecord` subtype representing an answer-section resource record. |
| [NameServer](SAIF.Framework.DNS/NameServer.md) | Class | `SAIF.Framework.DNS` | `ResourceRecord` subtype representing an authority-section (name server) resource record. |
| [AdditionalRecord](SAIF.Framework.DNS/AdditionalRecord.md) | Class | `SAIF.Framework.DNS` | `ResourceRecord` subtype representing an additional-section resource record. |
| [ANameRecord](SAIF.Framework.DNS/ANameRecord.md) | Class | `SAIF.Framework.DNS` | RDATA payload for an ANAME (address) resource record. |
| [MXRecord](SAIF.Framework.DNS/MXRecord.md) | Class | `SAIF.Framework.DNS` | RDATA payload for an MX (mail exchanger) resource record; sortable by preference. |
| [NSRecord](SAIF.Framework.DNS/NSRecord.md) | Class | `SAIF.Framework.DNS` | RDATA payload for an NS (name server) resource record. |
| [SoaRecord](SAIF.Framework.DNS/SoaRecord.md) | Class | `SAIF.Framework.DNS` | RDATA payload for an SOA (start of authority) resource record. |
| [NoResponseException](SAIF.Framework.DNS/NoResponseException.md) | Class | `SAIF.Framework.DNS` | Thrown when no UDP response is received after retries. |
| [InvalidResponseException](SAIF.Framework.DNS/InvalidResponseException.md) | Class | `SAIF.Framework.DNS` | Thrown when a response cannot be parsed as expected. |
| [RecordBase](SAIF.Framework.DNS/RecordBase.md) | Class | `SAIF.Framework.DNS` | Empty abstract marker base class for all RDATA record types. |
| [DnsType](SAIF.Framework.DNS/DnsType.md) | Enum | `SAIF.Framework.DNS` | DNS query/record type values (`ANAME`, `NS`, `SOA`, `MX`, `None`). |
| [DnsClass](SAIF.Framework.DNS/DnsClass.md) | Enum | `SAIF.Framework.DNS` | DNS query/record class values (`IN`, `CS`, `CH`, `HS`, `None`). |
| [ReturnCode](SAIF.Framework.DNS/ReturnCode.md) | Enum | `SAIF.Framework.DNS` | DNS response codes (0-6). |
| [Opcode](SAIF.Framework.DNS/Opcode.md) | Enum | `SAIF.Framework.DNS` | DNS query opcode values (0-15). |

<!-- Every public type (class, interface, enum, delegate) must appear in this table. -->
<!-- Every type name must be a markdown link to its documentation page. -->
<!-- Do not leave any type unlinked. -->

## Sources
- SAIF.Framework.DNS\Resolver.cs
- SAIF.Framework.DNS\Request.cs
- SAIF.Framework.DNS\Response.cs
- SAIF.Framework.DNS\Question.cs
- SAIF.Framework.DNS\ResourceRecord.cs
- SAIF.Framework.DNS\ANameRecord.cs
- SAIF.Framework.DNS\MXRecord.cs
- SAIF.Framework.DNS\NSRecord.cs
- SAIF.Framework.DNS\SoaRecord.cs
- SAIF.Framework.DNS\NoResponseException.cs
- SAIF.Framework.DNS\InvalidResponseException.cs
- SAIF.Framework.DNS\RecordBase.cs
- SAIF.Framework.DNS\Enums.cs
