@@ -721,19 +721,15 @@ internal void AppendBinary(ByteBufferWriter writer, StatementPreparerOptions opt
721
721
}
722
722
}
723
723
724
- internal static string NormalizeParameterName ( string name )
725
- {
726
- name = name . Trim ( ) ;
727
-
728
- if ( ( name . StartsWith ( "@`" , StringComparison . Ordinal ) || name . StartsWith ( "?`" , StringComparison . Ordinal ) ) && name . EndsWith ( "`" , StringComparison . Ordinal ) )
729
- return name . Substring ( 2 , name . Length - 3 ) . Replace ( "``" , "`" ) ;
730
- if ( ( name . StartsWith ( "@'" , StringComparison . Ordinal ) || name . StartsWith ( "?'" , StringComparison . Ordinal ) ) && name . EndsWith ( "'" , StringComparison . Ordinal ) )
731
- return name . Substring ( 2 , name . Length - 3 ) . Replace ( "''" , "'" ) ;
732
- if ( ( name . StartsWith ( "@\" " , StringComparison . Ordinal ) || name . StartsWith ( "?\" " , StringComparison . Ordinal ) ) && name . EndsWith ( "\" " , StringComparison . Ordinal ) )
733
- return name . Substring ( 2 , name . Length - 3 ) . Replace ( "\" \" " , "\" " ) ;
734
-
735
- return name . StartsWith ( "@" , StringComparison . Ordinal ) || name . StartsWith ( "?" , StringComparison . Ordinal ) ? name . Substring ( 1 ) : name ;
736
- }
724
+ internal static string NormalizeParameterName ( string name ) =>
725
+ name . Trim ( ) switch
726
+ {
727
+ [ '@' or '?' , '`' , .. var middle, '`' ] => middle . Replace ( "``" , "`" ) ,
728
+ [ '@' or '?' , '\' ' , .. var middle, '\' ' ] => middle . Replace ( "''" , "'" ) ,
729
+ [ '@' or '?' , '"' , .. var middle, '"' ] => middle . Replace ( "\" \" " , "\" " ) ,
730
+ [ '@' or '?' , .. var rest] => rest ,
731
+ { } other => other ,
732
+ } ;
737
733
738
734
#if NET6_0_OR_GREATER
739
735
private static void WriteDateOnly ( ByteBufferWriter writer , DateOnly dateOnly )
0 commit comments