Exemplo n.º 1
0
        public static string BuildAck(ISA originalIsa, GS originalGs, EdiMessage ack, AckVersion ackVersion, int isaControlNumber = 1, int gsControlNumber = 1)
        {
            var memoryStream = new MemoryStream();
            var writer       = new X12Writer(memoryStream, Encoding.Default, Environment.NewLine);

            writer.Write(originalIsa.ToAckIsa(isaControlNumber.ToString().PadLeft(9, '0'), ackVersion));
            writer.Write(originalGs.ToAckGs(gsControlNumber.ToString(), ackVersion));
            writer.Write(ack);
            writer.Flush();
            memoryStream.Position = 0;
            using (var reader = new StreamReader(memoryStream))
                return(reader.ReadToEnd());
        }
        private static string BuildAck <T>(ISA originalIsa, GS originalGs, T ack, AckVersion ackVersion, int isaControlNumber = 1, int gsControlNumber = 1) where T : EdiMessage
        {
            var memoryStream = new MemoryStream();

            using (var writer = new X12Writer(memoryStream, new X12WriterSettings()
            {
                Encoding = Encoding.Default, Postfix = Environment.NewLine
            }))
            {
                writer.Write(originalIsa.ToAckIsa(isaControlNumber.ToString().PadLeft(9, '0'), ackVersion));
                writer.Write(originalGs.ToAckGs(gsControlNumber.ToString(), ackVersion));
                writer.Write(ack);
            }

            memoryStream.Position = 0;
            using (var reader = new StreamReader(memoryStream))
                return(reader.ReadToEnd());
        }