/// <inheritdoc/> public string ToDelimitedString() { CultureInfo culture = CultureInfo.CurrentCulture; return(string.Format( culture, StringHelper.StringFormatSequence(0, 18, Configuration.FieldSeparator), Id, ActionCode, UniqueDeviceIdentifier?.ToDelimitedString(), DeviceType != null ? string.Join(Configuration.FieldRepeatSeparator, DeviceType.Select(x => x.ToDelimitedString())) : null, DeviceStatus != null ? string.Join(Configuration.FieldRepeatSeparator, DeviceStatus.Select(x => x.ToDelimitedString())) : null, ManufacturerDistributor?.ToDelimitedString(), BrandName, ModelIdentifier, CatalogueIdentifier, UdiDeviceIdentifier?.ToDelimitedString(), DeviceLotNumber, DeviceSerialNumber, DeviceManufactureDate.HasValue ? DeviceManufactureDate.Value.ToString(Consts.DateTimeFormatPrecisionSecond, culture) : null, DeviceExpiryDate.HasValue ? DeviceExpiryDate.Value.ToString(Consts.DateTimeFormatPrecisionSecond, culture) : null, SafetyCharacteristics != null ? string.Join(Configuration.FieldRepeatSeparator, SafetyCharacteristics.Select(x => x.ToDelimitedString())) : null, DeviceDonationIdentification?.ToDelimitedString(), SoftwareVersionNumber, ImplantationStatus?.ToDelimitedString() ).TrimEnd(Configuration.FieldSeparator.ToCharArray())); }