From 59879d6d622efeee0d3c92bfd6dee12543015de6 Mon Sep 17 00:00:00 2001 From: Michael Ganss Date: Fri, 12 Apr 2024 16:03:50 +0200 Subject: [PATCH] Align interface and class property definitions (fixes #501) --- XmlSchemaClassGenerator/ModelBuilder.cs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/XmlSchemaClassGenerator/ModelBuilder.cs b/XmlSchemaClassGenerator/ModelBuilder.cs index fb495f6d..a72c9dde 100644 --- a/XmlSchemaClassGenerator/ModelBuilder.cs +++ b/XmlSchemaClassGenerator/ModelBuilder.cs @@ -232,6 +232,22 @@ private void PromoteInterfacePropertiesToCollection() interfaceProperty.IsCollection = true; } + else + { + interfaceProperty.IsCollection = false; + } + + if (derivedProperties.Exists(p => p.IsRequired)) + { + foreach (var derivedProperty in derivedProperties.Where(p => !p.IsRequired)) + derivedProperty.IsRequired = true; + + interfaceProperty.IsRequired = true; + } + else + { + interfaceProperty.IsRequired = false; + } } } }