Пример #1
0
        private IEnumerable <IEdiInContainer> split(EdiSegmentCollection segments, SegmentLabel labelType,
                                                    SegmentLabel closeType, IEdiInContainer parentContainer)
        {
            IList <IEdiInContainer> returnList = new List <IEdiInContainer>();
            IList <Segment>         segs       = parentContainer.InnerSegments.ToList();

            segs = RemoveNullSegments(segs);
            var ctxtCount = segs.Where(s => s != null).ToList().Count(s => s.Label == labelType);

            for (int i = 0; i < ctxtCount; i++)
            {
                returnList.Add(parentContainer.CreateChild(extract(new EdiSegmentCollection(segs, segments.ElementDelimiter), labelType, closeType, i)));
            }
            return(returnList);
        }
        private IEnumerable<IEdiInContainer> split(EdiSegmentCollection segments, SegmentLabel labelType, 
            SegmentLabel closeType, IEdiInContainer parentContainer)
        {
            IList<IEdiInContainer> returnList = new List<IEdiInContainer>();
            IList<Segment> segs = parentContainer.InnerSegments.ToList();
            segs =  RemoveNullSegments(segs);
            var ctxtCount = segs.Where(s => s != null).ToList().Count(s => s.Label == labelType);
            for (int i = 0; i < ctxtCount; i++)
            {

                returnList.Add(parentContainer.CreateChild(extract(new EdiSegmentCollection(segs, segments.ElementDelimiter), labelType, closeType, i)));
            }
            return returnList;
        }