Code sample:
List all records in all zones
This code sample lists all the DNS zones with all records and all data fields.
C#:
using System;
using JHSoftware.SimpleDNSPlus;
namespace cs_sample
{
class Program
{
static void Main(string[] args)
{
Connection SDNSConn = new Connection("127.0.0.1", 8053, "password");
ZoneList ZoneList = SDNSConn.GetZoneList();
foreach (ZoneListItem ZLItem in ZoneList)
{
Console.Write("Zone: {0}", ZLItem.ZoneName);
if (ZLItem.Secondary) Console.Write(" (secondary)");
Console.WriteLine();
Console.WriteLine("----------------------------------------------------");
DNSZone Zone = SDNSConn.GetZone(ZLItem.ZoneName);
foreach (DNSRecord Record in Zone.Records)
{
Console.Write("{0}\t{1}\t{2}\t", Record.Name, Record.Type, Record.TTL);
foreach (string DataField in Record.DataFields)
{
Console.Write("{0} ", DataField);
}
Console.WriteLine();
}
Console.WriteLine("----------------------------------------------------");
}
Console.ReadLine();
}
}
}
VB.NET:
Imports JHSoftware.SimpleDNSPlus
Module Module1
Sub Main()
Dim SDNSConn As New Connection("127.0.0.1", 8053, "password")
Dim ZoneList As ZoneList = SDNSConn.GetZoneList()
For Each ZLItem As ZoneListItem In ZoneList
Console.Write("Zone: " & ZLItem.ZoneName)
If ZLItem.Secondary Then Console.Write(" (secondary)")
Console.WriteLine()
Console.WriteLine("----------------------------------------------------")
Dim Zone As DNSZone = SDNSConn.GetZone(ZLItem.ZoneName)
For Each Record As DNSRecord In Zone.Records
Console.Write(Record.Name & vbTab & Record.Type & vbTab & Record.TTL & vbTab)
For Each DataField As String In Record.DataFields
Console.Write(DataField & " ")
Next
Console.WriteLine()
Next
Console.WriteLine("----------------------------------------------------")
Next
Console.ReadLine()
End Sub
End Module
Visual Basic 6 (watch result in the Visual Basic "Immediate Window"):
Sub Main()
Dim SDNSConn As New Connection
Dim Zone As DNSZone
Dim Record As DNSRecord
Dim ZoneList As ZoneList
Dim ZLItem As ZoneListItem
Dim DataField As Variant
SDNSConn.Init "127.0.0.1", 8053, "password"
Set ZoneList = SDNSConn.GetZoneList()
For Each ZLItem In ZoneList
Debug.Print "Zone: " & ZLItem.ZoneName;
If ZLItem.Secondary Then Debug.Print (" (secondary)");
Debug.Print
Debug.Print "----------------------------------------------------"
Set Zone = SDNSConn.GetZone(ZLItem.ZoneName)
For Each Record In Zone.Records
Debug.Print (Record.Name & vbTab & Record.Type & vbTab & Record.TTL & vbTab);
For Each DataField In Record.DataFields
Debug.Print (DataField & " ");
Next
Debug.Print
Next
Debug.Print "----------------------------------------------------"
Next
End Sub
VBScript (save as "sampe.vbs" and run from command prompt with "cscript sampe.vbs"):
Set Console=wscript.stdout
Set SDNSConn=wscript.CreateObject("SDNSAPI.Connection")
SDNSConn.Init "127.0.0.1",8053,"password"
Set ZoneList=SDNSConn.GetZoneList()
For Each ZLItem in ZoneList
Console.Write "Zone: " & ZLItem.ZoneName
If ZLItem.Secondary Then Console.Write " (secondary)"
Console.WriteLine
Console.WriteLine "----------------------------------------------------"
Set Zone=SDNSConn.GetZone(ZLItem.ZoneName)
For Each Record in Zone.Records
Console.Write Record.Name & vbTab & Record.Type & vbTab & Record.TTL & vbTab
For Each DataField in Record.DataFields
Console.Write DataField & " "
Next
Console.WriteLine
Next
Console.WriteLine "----------------------------------------------------"
Next