как использовать мой собственный класс шаблонов EDI для преобразования из EDI в XML с помощью EDIfabric?

EDIfarbic использует свой собственный класс POCO для чтения и преобразования файла EDI в промежуточные данные. Я хочу, чтобы мой собственный класс POCO заменил их, например, они используют класс TS850 для преобразования файла EDI x12 850 в XML, но я хочу использовать свой собственный формат класса X12_00401_850. вот код, использующий класс TS850 для преобразования:

      using (var stream = new FileStream("C:\\Users\\custom-schema.xsd", FileMode.Open))
        {
            var serializer = new XmlSerializer(typeof(TS850), "http://schemas.microsoft.com/BizTalk/EDI/X12/2006");
            var xmlDataWriterSettings = new XmlWriterSettings { Indent = true };
            using (var ediReader = new X12Reader(File.OpenRead("C:\\Users\\850.edi"), "EdiFabric.Templates.X12"))
            {
                var ediItems = ediReader.ReadToEnd().ToList();
                var transactions = ediItems.OfType<TS850>();
                foreach (var transaction in transactions)
                {
                   
                    serializer.Serialize(XmlWriter.Create(File.Create("C:\\Users\\output.xml"), xmlDataWriterSettings), transaction);
                }
                Console.WriteLine("file is made");
            }
        }

    }

Я попробовал сменить тип с TS850 на свой класс, но не получилось. Единственный вариант, который у меня есть, — это сопоставить класс TS850 с моим классом, но есть ли другой способ его прямого преобразования?

0 ответов

Другие вопросы по тегам