Skip to content

Commit d40150d

Browse files
authored
Merge pull request #227 from JoeSchimo/master
Correct order propery to correctly increment on recusion
2 parents 561d75c + 1345d0b commit d40150d

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

XmlSchemaClassGenerator/ModelBuilder.cs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -665,10 +665,9 @@ private IEnumerable<PropertyModel> CreatePropertiesForAttributes(Uri source, Typ
665665
return properties;
666666
}
667667

668-
private IEnumerable<PropertyModel> CreatePropertiesForElements(Uri source, TypeModel typeModel, XmlSchemaParticle particle, IEnumerable<Particle> items)
668+
private IEnumerable<PropertyModel> CreatePropertiesForElements(Uri source, TypeModel typeModel, XmlSchemaParticle particle, IEnumerable<Particle> items, int order = 0)
669669
{
670670
var properties = new List<PropertyModel>();
671-
var order = 0;
672671

673672
foreach (var item in items)
674673
{
@@ -755,7 +754,11 @@ private IEnumerable<PropertyModel> CreatePropertiesForElements(Uri source, TypeM
755754
}
756755

757756
var groupItems = GetElements(groupRef.Particle);
758-
var groupProperties = CreatePropertiesForElements(source, typeModel, item.XmlParticle, groupItems);
757+
var groupProperties = CreatePropertiesForElements(source, typeModel, item.XmlParticle, groupItems, order).ToList();
758+
if (_configuration.EmitOrder)
759+
{
760+
order += groupProperties.Count;
761+
}
759762
properties.AddRange(groupProperties);
760763
}
761764
}

0 commit comments

Comments
 (0)