From 0f520ee480699895fbc8811f487ea3a7ce9e8478 Mon Sep 17 00:00:00 2001 From: Alan Edwardes Date: Sun, 31 Mar 2024 08:37:59 +0100 Subject: [PATCH] Adds ValueAsString helper to DnsCaaResource. --- src/Ae.Dns.Protocol/Records/DnsCaaResource.cs | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/Ae.Dns.Protocol/Records/DnsCaaResource.cs b/src/Ae.Dns.Protocol/Records/DnsCaaResource.cs index 8df9f0d..14b6f82 100644 --- a/src/Ae.Dns.Protocol/Records/DnsCaaResource.cs +++ b/src/Ae.Dns.Protocol/Records/DnsCaaResource.cs @@ -29,6 +29,21 @@ public sealed class DnsCaaResource : IDnsResource, IEquatable /// public ReadOnlyMemory Value { get; set; } + /// + /// If this value is known to be a string, return it as ASCII. + /// + public string ValueAsString + { + get + { +#if NETSTANDARD2_0 + return Encoding.ASCII.GetString(Value.ToArray()); +#else + return Encoding.ASCII.GetString(Value.Span); +#endif + } + } + /// public bool Equals(DnsCaaResource? other) { @@ -57,7 +72,7 @@ public void ReadBytes(ReadOnlyMemory bytes, ref int offset, int length) } /// - public override string ToString() => $"{Flag} {Tag} {Encoding.ASCII.GetString(Value.ToArray())}"; + public override string ToString() => $"{Flag} {Tag} {ValueAsString}"; /// public void WriteBytes(Memory bytes, ref int offset)