C#: поле 32 в ISO8583
Столкнулся с ситуацией - при формировании сообщения 0800 неправильно формируется поле 32 (данные процессингового центра). Поле переменной длинны, у меня имеет длину 6 символов из 11 возможных.
Т.е. 32 поле = "06" + "542996" (длинна +значение) делаю как в примере в стандарте, по идее ошибки не должно быть, но имеено в этом поле и есть ошибка.
Детали расчета:
[0][6] = {0x30 0x36} = byte[] {48, 54}
[5][4][2][9][9][6] = {0x35 0x34 0x32 0x39 0x39 0x36} = byte[] {53, 52, 50, 57, 57, 54}
В итоге я эти два массива склеиваю и передаю в сообщение.
Из-за ошибки в этом поле я не получаю ответа на все сообщение. В чем именно шибка я не понимаю, поэтому прошу разобраться.
Подскажите, пожалуйста, где ошибка?
Источник: Stack Overflow на русском