@@ -203,54 +203,7 @@ public static string GetEncodedPathAndQuery(this HttpRequest request)
203
203
/// suitable only for display.</returns>
204
204
public static string GetDisplayUrl ( this HttpRequest request )
205
205
{
206
- var scheme = request . Scheme ?? string . Empty ;
207
- var host = request . Host . Value ?? string . Empty ;
208
- var pathBase = request . PathBase . Value ?? string . Empty ;
209
- var path = request . Path . Value ?? string . Empty ;
210
- var queryString = request . QueryString . Value ?? string . Empty ;
211
-
212
- var length = scheme . Length + SchemeDelimiter . Length + host . Length
213
- + pathBase . Length + path . Length + queryString . Length ;
214
-
215
- return string . Create (
216
- length ,
217
- ( scheme , host , pathBase , path , queryString ) ,
218
- static ( buffer , uriParts ) =>
219
- {
220
- var ( scheme , host , pathBase , path , queryString ) = uriParts ;
221
-
222
- if ( scheme . Length > 0 )
223
- {
224
- scheme . CopyTo ( buffer ) ;
225
- buffer = buffer . Slice ( scheme . Length ) ;
226
- }
227
-
228
- SchemeDelimiter . CopyTo ( buffer ) ;
229
- buffer = buffer . Slice ( SchemeDelimiter . Length ) ;
230
-
231
- if ( host . Length > 0 )
232
- {
233
- host . CopyTo ( buffer ) ;
234
- buffer = buffer . Slice ( host . Length ) ;
235
- }
236
-
237
- if ( pathBase . Length > 0 )
238
- {
239
- pathBase . CopyTo ( buffer ) ;
240
- buffer = buffer . Slice ( pathBase . Length ) ;
241
- }
242
-
243
- if ( path . Length > 0 )
244
- {
245
- path . CopyTo ( buffer ) ;
246
- buffer = buffer . Slice ( path . Length ) ;
247
- }
248
-
249
- if ( queryString . Length > 0 )
250
- {
251
- queryString . CopyTo ( buffer ) ;
252
- }
253
- } ) ;
206
+ return string . Concat ( ( ReadOnlySpan < string > ) [ request . Scheme , "://" , request . Host . Value , request . PathBase . Value , request . Path . Value , request . QueryString . Value ] ) ;
254
207
}
255
208
256
209
/// <summary>
0 commit comments