Skip to content

C# generator: create anoymous types with camel casing#1716

Merged
lahma merged 1 commit into
RicoSuter:masterfrom
WolfgangHG:camelcasing
Jan 9, 2025
Merged

C# generator: create anoymous types with camel casing#1716
lahma merged 1 commit into
RicoSuter:masterfrom
WolfgangHG:camelcasing

Conversation

@WolfgangHG
Copy link
Copy Markdown
Contributor

This is an attempt to fix RicoSuter/NSwag#4849 and RicoSuter/NSwag#4837: since NSwag 14, the resulting C# file generated from a yaml file might contain lower case class names.
This seems to happen if an array item has as lower case type name hint (e.g. "data"), and a class "Data" was already generated.
In this situation, DefaultTypeNameGenerator.GenerateAnonymousTypeName does not call ConversionUtilities.ConvertToUpperCamelCase and thus picks the lower case class name "data" as "not used".

I have no idea why this worked with NSwag 13 and what broke it.

With my fix, it would generate a class "Data2" again.

Hope you don't force me to add a test case - for me it happens with a large closed source yaml file, and the open source file from the other bug report is also large. And I am not a yaml specialist...

@WolfgangHG
Copy link
Copy Markdown
Contributor Author

Just want to ping this...

Copy link
Copy Markdown
Collaborator

@lahma lahma left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you.

@lahma lahma merged commit 8f09e8c into RicoSuter:master Jan 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Generated class names cause compiler warning.

2 participants