Skip to content

Commit 9254358

Browse files
committed
Always create a derived class for a root element if its namespace is different from its type's (see #567)
1 parent 95dafbc commit 9254358

1 file changed

Lines changed: 4 additions & 1 deletion

File tree

XmlSchemaClassGenerator/ModelBuilder.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -379,10 +379,13 @@ private void CreateOriginalRootClass(XmlSchemaElement rootElement, TypeModel typ
379379
{
380380
// Also create an empty derived class for the original root element
381381

382+
var originalRootElement = type.RootElement;
383+
var originalRootElementSource = CodeUtilities.CreateUri(originalRootElement.SourceUri);
384+
382385
var originalClassModel = new ClassModel(_configuration)
383386
{
384387
Name = _configuration.NamingProvider.RootClassNameFromQualifiedName(type.RootElementName, rootElement),
385-
Namespace = classModel.Namespace
388+
Namespace = CreateNamespaceModel(originalRootElementSource, originalRootElement.QualifiedName)
386389
};
387390

388391
originalClassModel.Documentation.AddRange(classModel.Documentation);

0 commit comments

Comments
 (0)