Hay una biblioteca EDI.Net que es de código abierto y admite los tres formatos conocidos de EDI (X12, EDIFact, Tradacoms). En su caso para X12, debe proporcionar una implementación personalizada del IEdiGrammar
con los siguientes preajustes.
public class EDI_X12Grammar : IEdiGrammar
{
...
}
var grammar = new EDI_X12Grammar()
{
ComponentDataElementSeparator = new[] { '>' },
DataElementSeparator = new[] { '*' },
DecimalMark = null,
ReleaseCharacter = null,
Reserved = new char[0],
SegmentTerminator = '~',
ServiceStringAdviceTag = null,
InterchangeHeaderTag = "ISA",
FunctionalGroupHeaderTag = "GS",
MessageHeaderTag = "ST",
MessageTrailerTag = "SE",
FunctionalGroupTrailerTag = "GE",
InterchangeTrailerTag = "IEA",
};
Exención de responsabilidad Escribí la biblioteca.
En realidad, lo que descubrí recientemente es que es el formato X12 820 4010 EDI ... – ElHaix