From f62877b9dbc61835328528a4fdc4d7296262c7e0 Mon Sep 17 00:00:00 2001 From: Kiran Challa Date: Tue, 31 Jul 2018 12:38:58 -0700 Subject: [PATCH 1/2] Show default values in CompositeEndpointDataSource's debugger display string --- .../CompositeEndpointDataSource.cs | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.AspNetCore.Routing/CompositeEndpointDataSource.cs b/src/Microsoft.AspNetCore.Routing/CompositeEndpointDataSource.cs index 2b4912a086..acf8f0304c 100644 --- a/src/Microsoft.AspNetCore.Routing/CompositeEndpointDataSource.cs +++ b/src/Microsoft.AspNetCore.Routing/CompositeEndpointDataSource.cs @@ -127,9 +127,11 @@ namespace Microsoft.AspNetCore.Routing var template = matcherEndpoint.RoutePattern.RawText; template = string.IsNullOrEmpty(template) ? "\"\"" : template; sb.Append(template); - var requiredValues = matcherEndpoint.RequiredValues.Select(kvp => $"{kvp.Key} = \"{kvp.Value ?? "null"}\""); sb.Append(", Required Values: new { "); - sb.Append(string.Join(", ", requiredValues)); + sb.Append(string.Join(", ", GetValues(matcherEndpoint.RequiredValues))); + sb.Append(" }"); + sb.Append(", Defaults: new { "); + sb.Append(string.Join(", ", GetValues(matcherEndpoint.RoutePattern.Defaults))); sb.Append(" }"); sb.Append(", Order:"); sb.Append(matcherEndpoint.Order); @@ -150,6 +152,20 @@ namespace Microsoft.AspNetCore.Routing } } return sb.ToString(); + + IEnumerable GetValues(IEnumerable> values) + { + return values.Select( + kvp => + { + var value = "null"; + if (kvp.Value != null) + { + value = "\"" + kvp.Value.ToString() + "\""; + } + return kvp.Key + " = " + value; + }); + } } } } From ef2c127459c7bfabd4098f0c54661031d42d356a Mon Sep 17 00:00:00 2001 From: Kiran Challa Date: Tue, 31 Jul 2018 13:50:29 -0700 Subject: [PATCH 2/2] Show route name --- .../CompositeEndpointDataSource.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.AspNetCore.Routing/CompositeEndpointDataSource.cs b/src/Microsoft.AspNetCore.Routing/CompositeEndpointDataSource.cs index acf8f0304c..fd12ff706d 100644 --- a/src/Microsoft.AspNetCore.Routing/CompositeEndpointDataSource.cs +++ b/src/Microsoft.AspNetCore.Routing/CompositeEndpointDataSource.cs @@ -133,7 +133,10 @@ namespace Microsoft.AspNetCore.Routing sb.Append(", Defaults: new { "); sb.Append(string.Join(", ", GetValues(matcherEndpoint.RoutePattern.Defaults))); sb.Append(" }"); - sb.Append(", Order:"); + var routeNameMetadata = matcherEndpoint.Metadata.GetMetadata(); + sb.Append(", Route Name: "); + sb.Append(routeNameMetadata?.Name); + sb.Append(", Order: "); sb.Append(matcherEndpoint.Order); var httpMethodMetadata = matcherEndpoint.Metadata.GetMetadata(); @@ -142,7 +145,8 @@ namespace Microsoft.AspNetCore.Routing sb.Append(", Http Methods: "); sb.Append(string.Join(", ", httpMethodMetadata.HttpMethods)); } - + sb.Append(", Display Name: "); + sb.Append(matcherEndpoint.DisplayName); sb.AppendLine(); } else