/// <summary> /// Erstellt eine Empfänger-ID anhand einer BNR oder IK /// </summary> /// <param name="bnrOrIk">Eine ID die mit BN oder IK beginnt</param> /// <param name="bnrType">Wenn die ID nicht mit BN oder IK beginnt, dann wird der hier angegebene ID-Typ verwendet</param> /// <returns>Empfänger-ID</returns> /// <remarks>Sollte die <paramref name="bnrOrIk"/> nicht mit BN oder IK beginnen, dann wird als ID-Typ der im <paramref name="bnrType"/> hinterlegte verwendet.</remarks> public static ReceiverId FromBnrOrIk(string bnrOrIk, ReceiverIdType bnrType) { var hasPrefixBN = bnrOrIk.StartsWith("BN", StringComparison.OrdinalIgnoreCase); var hasPrefix = hasPrefixBN || bnrOrIk.StartsWith("IK", StringComparison.OrdinalIgnoreCase); var type = !hasPrefix ? bnrType : (hasPrefixBN ? ReceiverIdType.BNR : ReceiverIdType.IK); var id = bnrOrIk.Substring(hasPrefix ? 2 : 0); return(new ReceiverId(type, id)); }
private ReceiverId(ReceiverIdType type, string id) { Id = id; Type = type; }