<PackageReference Include="System.Formats.Asn1" Version="10.0.0-rc.2.25502.107" />

AsnCharacterStringEncodings

using System.Text; namespace System.Formats.Asn1 { internal static class AsnCharacterStringEncodings { private static readonly UTF8Encoding s_utf8Encoding = new UTF8Encoding(false, true); private static readonly BMPEncoding s_bmpEncoding = new BMPEncoding(); private static readonly IA5Encoding s_ia5Encoding = new IA5Encoding(); private static readonly VisibleStringEncoding s_visibleStringEncoding = new VisibleStringEncoding(); private static readonly NumericStringEncoding s_numericStringEncoding = new NumericStringEncoding(); private static readonly PrintableStringEncoding s_printableStringEncoding = new PrintableStringEncoding(); private static readonly T61Encoding s_t61Encoding = new T61Encoding(); internal static Encoding GetEncoding(UniversalTagNumber encodingType) { switch (encodingType) { case UniversalTagNumber.UTF8String: return s_utf8Encoding; case UniversalTagNumber.NumericString: return s_numericStringEncoding; case UniversalTagNumber.PrintableString: return s_printableStringEncoding; case UniversalTagNumber.IA5String: return s_ia5Encoding; case UniversalTagNumber.VisibleString: return s_visibleStringEncoding; case UniversalTagNumber.BMPString: return s_bmpEncoding; case UniversalTagNumber.TeletexString: return s_t61Encoding; default: throw new ArgumentOutOfRangeException("encodingType", encodingType, null); } } } }