Skip to content

Commit d4b6cfc

Browse files
Add missing perf optimization
1 parent 80f8203 commit d4b6cfc

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

src/Common/src/Common/QueryStringApiVersionReader.cs

+12
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
namespace Asp.Versioning;
44

5+
#if !NETFRAMEWORK
6+
using System.Buffers;
7+
#endif
58
using static Asp.Versioning.ApiVersionParameterLocation;
69
using static System.StringComparer;
710

@@ -80,13 +83,22 @@ public virtual void AddParameters( IApiVersionParameterDescriptionContext contex
8083
}
8184

8285
var count = ParameterNames.Count;
86+
#if NETFRAMEWORK
8387
var names = new string[count];
88+
#else
89+
var pool = ArrayPool<string>.Shared;
90+
var names = pool.Rent( count );
91+
#endif
8492

8593
ParameterNames.CopyTo( names, 0 );
8694

8795
for ( var i = 0; i < count; i++ )
8896
{
8997
context.AddParameter( names[i], Query );
9098
}
99+
100+
#if !NETFRAMEWORK
101+
pool.Return( names );
102+
#endif
91103
}
92104
}

0 commit comments

Comments
 (0)