Skip to content

Commit c6b2a31

Browse files
committed
Keep parameter casing when generating Immutable Record mapped through constructor. Fixes MapsterMapper/Mapster#358.
1 parent 7c102a5 commit c6b2a31

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

ExpressionDebugger.Tests/DebugInfoInjectorTest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -798,7 +798,7 @@ public void TestRecordType()
798798
Assert.AreEqual(@"
799799
namespace ExpressionDebugger.Tests
800800
{
801-
public partial record MockClass(string prop2)
801+
public partial record MockClass(string Prop2)
802802
{
803803
public string Prop1 { get; set; }
804804
public string Prop3 { get; init; }

ExpressionTranslator/ExpressionTranslator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2012,7 +2012,7 @@ private void WriteCtorParams(List<PropertyDefinitions> ctorParams)
20122012
var parameter = ctorParams[i];
20132013
if (i > 0)
20142014
Write(", ");
2015-
Write($"{TranslateNullable(parameter.Type, parameter.NullableContext ?? Definitions?.NullableContext, parameter.Nullable)} {char.ToLower(parameter.Name[0]) + parameter.Name.Substring(1)}");
2015+
Write($"{TranslateNullable(parameter.Type, parameter.NullableContext ?? Definitions?.NullableContext, parameter.Nullable)} {((Definitions?.IsRecordType ?? false) ? parameter.Name : char.ToLower(parameter.Name[0]) + parameter.Name.Substring(1))}");
20162016
}
20172017
Write(")");
20182018
}

0 commit comments

Comments
 (0)