From 14974941ce0894638c5341f2c45fa25d9d30addc Mon Sep 17 00:00:00 2001 From: dogdie233 Date: Fri, 17 Jan 2025 05:21:18 +0800 Subject: [PATCH] fix #1031 --- .../TypeFactoryGenerator.cs | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/YamlDotNet.Analyzers.StaticGenerator/TypeFactoryGenerator.cs b/YamlDotNet.Analyzers.StaticGenerator/TypeFactoryGenerator.cs index 52beab621..74fc430c1 100644 --- a/YamlDotNet.Analyzers.StaticGenerator/TypeFactoryGenerator.cs +++ b/YamlDotNet.Analyzers.StaticGenerator/TypeFactoryGenerator.cs @@ -89,10 +89,14 @@ private string GenerateSource(SerializableSyntaxReceiver syntaxReceiver) write("using System;", true); write("using System.Collections.Generic;", true); - var namespaceName = syntaxReceiver.YamlStaticContextType?.ContainingNamespace.ContainingNamespace; + var namespaceName = syntaxReceiver.YamlStaticContextType?.GetNamespace(); + var isGlobalNamespace = string.IsNullOrEmpty(namespaceName); - write($"namespace {syntaxReceiver.YamlStaticContextType?.GetNamespace() ?? "YamlDotNet.Static"}", true); - write("{", true); indent(); + if (!isGlobalNamespace) + { + write($"namespace {namespaceName}", true); + write("{", true); indent(); + } new StaticContextFile(write, indent, unindent, _context).Write(syntaxReceiver); new StaticObjectFactoryFile(write, indent, unindent, _context).Write(syntaxReceiver); @@ -101,7 +105,10 @@ private string GenerateSource(SerializableSyntaxReceiver syntaxReceiver) new StaticTypeInspectorFile(write, indent, unindent, _context).Write(syntaxReceiver); new ObjectAccessorFileGenerator(write, indent, unindent, _context).Write(syntaxReceiver); - unindent(); write("}", true); + if (!isGlobalNamespace) + { + unindent(); write("}", true); + } } catch (Exception exception) {