<PackageReference Include="BouncyCastle.Cryptography" Version="2.6.2" />

AttCertIssuer

using System; namespace Org.BouncyCastle.Asn1.X509 { public class AttCertIssuer : Asn1Encodable, IAsn1Choice { private readonly Asn1Encodable obj; private readonly Asn1Object choiceObj; public Asn1Encodable Issuer => obj; public static AttCertIssuer GetInstance(object obj) { return Asn1Utilities.GetInstanceChoice(obj, GetOptional); } public static AttCertIssuer GetInstance(Asn1TaggedObject obj, bool isExplicit) { return Asn1Utilities.GetInstanceChoice(obj, isExplicit, GetInstance); } public static AttCertIssuer GetOptional(Asn1Encodable element) { if (element == null) throw new ArgumentNullException("element"); AttCertIssuer attCertIssuer = element as AttCertIssuer; if (attCertIssuer != null) return attCertIssuer; GeneralNames optional = GeneralNames.GetOptional(element); if (optional != null) return new AttCertIssuer(optional); Asn1TaggedObject optional2 = Asn1TaggedObject.GetOptional(element); if (optional2 != null && optional2.HasContextTag(0)) return new AttCertIssuer(V2Form.GetTagged(optional2, false)); V2Form optional3 = V2Form.GetOptional(element); if (optional3 != null) return new AttCertIssuer(optional3); return null; } public static AttCertIssuer GetTagged(Asn1TaggedObject taggedObject, bool declaredExplicit) { return Asn1Utilities.GetTaggedChoice(taggedObject, declaredExplicit, GetInstance); } public AttCertIssuer(GeneralNames names) { obj = names; choiceObj = obj.ToAsn1Object(); } public AttCertIssuer(V2Form v2Form) { obj = v2Form; choiceObj = new DerTaggedObject(false, 0, obj); } public override Asn1Object ToAsn1Object() { return choiceObj; } } }