@@ -37,6 +37,8 @@ private static void AppendParameters(
37
37
{
38
38
var useListForDataType = openApiParameter . Schema . IsTypeArray ( ) ;
39
39
40
+ var parameterName = openApiParameter . Name . EnsureValidFormattedPropertyName ( ) ;
41
+
40
42
var dataType = useListForDataType
41
43
? openApiParameter . Schema . Items . GetDataType ( )
42
44
: openApiParameter . Schema . GetDataType ( ) ;
@@ -47,17 +49,27 @@ private static void AppendParameters(
47
49
48
50
if ( parameters . FirstOrDefault ( x => x . Name == openApiParameter . Name ) is null )
49
51
{
52
+ var defaultValueInitializer = openApiParameter . Schema . GetDefaultValueAsString ( ) ;
53
+
54
+ if ( ! string . IsNullOrEmpty ( defaultValueInitializer ) &&
55
+ openApiParameter . ContainsEnumInSchemaOrProperties ( ) )
56
+ {
57
+ defaultValueInitializer = dataType . Equals ( parameterName , StringComparison . Ordinal )
58
+ ? $ "{ ContentGeneratorConstants . Contracts } .{ dataType } .{ defaultValueInitializer . PascalCase ( ApiOperationExtractor . ModelNameSeparators , removeSeparators : true ) } "
59
+ : $ "{ dataType } .{ defaultValueInitializer . PascalCase ( ApiOperationExtractor . ModelNameSeparators , removeSeparators : true ) } ";
60
+ }
61
+
50
62
parameters . Add ( new ContentGeneratorClientParameterParametersProperty (
51
63
openApiParameter . Name ,
52
- openApiParameter . Name . EnsureValidFormattedPropertyName ( ) ,
64
+ parameterName ,
53
65
openApiParameter . ExtractDocumentationTags ( ) ,
54
66
dataType ,
55
67
isSimpleType ,
56
68
useListForDataType ,
57
69
GetIsNullable ( openApiParameter , useListForDataType ) ,
58
70
openApiParameter . Required ,
59
71
GetAdditionalValidationAttributes ( openApiParameter ) ,
60
- openApiParameter . Schema . GetDefaultValueAsString ( ) ) ) ;
72
+ defaultValueInitializer ) ) ;
61
73
}
62
74
}
63
75
}
@@ -94,7 +106,7 @@ private static void AppendParametersFromBody(
94
106
var requestBodyType = "string?" ;
95
107
if ( requestSchema . Reference is not null )
96
108
{
97
- requestBodyType = requestSchema . Reference . Id . EnsureFirstCharacterToUpper ( ) ;
109
+ requestBodyType = requestSchema . Reference . Id . PascalCase ( ApiOperationExtractor . ModelNameSeparators , removeSeparators : true ) ;
98
110
}
99
111
else if ( isFormatTypeOfBinary )
100
112
{
@@ -106,7 +118,7 @@ private static void AppendParametersFromBody(
106
118
}
107
119
else if ( requestSchema . Items is not null )
108
120
{
109
- requestBodyType = requestSchema . Items . Reference . Id . EnsureFirstCharacterToUpper ( ) ;
121
+ requestBodyType = requestSchema . Items . Reference . Id . PascalCase ( ApiOperationExtractor . ModelNameSeparators , removeSeparators : true ) ;
110
122
}
111
123
112
124
parameters . Add ( new ContentGeneratorClientParameterParametersProperty (
0 commit comments