Beispiel #1
0
        public static TOut Deserialize <TXml, TOut>(XmlReader content, out List <ErrorMessage> errorObjects, out string mappingError)
            where TXml : XmlBase where TOut : class, new()
        {
            XmlSerializer serializer = new XmlSerializer(typeof(TXml));

            serializer.AddDebugHooks();

            try
            {
                var obj = (TXml)serializer.Deserialize(content);
                errorObjects = new List <ErrorMessage>();
                //mappingError = uknowns.ToString();
                mappingError = string.Join(Environment.NewLine, uknownTags.Select(d => $"{d}"));
                return(new TOut().PopulateFrom(obj, errorObjects));
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
            finally
            {
                Console.Write(uknowns.ToString());
            }
        }