diff --git a/src/Microsoft.AspNet.Routing/Template/TemplateRoute.cs b/src/Microsoft.AspNet.Routing/Template/TemplateRoute.cs index acf6c22e50..fa1cd4c88c 100644 --- a/src/Microsoft.AspNet.Routing/Template/TemplateRoute.cs +++ b/src/Microsoft.AspNet.Routing/Template/TemplateRoute.cs @@ -11,6 +11,7 @@ namespace Microsoft.AspNet.Routing.Template private readonly IDictionary _defaults; private readonly IDictionary _constraints; private readonly IRouter _target; + private readonly Template _parsedTemplate; private readonly string _routeTemplate; private readonly TemplateMatcher _matcher; private readonly TemplateBinder _binder; @@ -29,9 +30,9 @@ namespace Microsoft.AspNet.Routing.Template _constraints = RouteConstraintBuilder.BuildConstraints(constraints, _routeTemplate); // The parser will throw for invalid routes. - var parsedTemplate = TemplateParser.Parse(RouteTemplate); + _parsedTemplate = TemplateParser.Parse(RouteTemplate); - _matcher = new TemplateMatcher(parsedTemplate); + _matcher = new TemplateMatcher(_parsedTemplate); _binder = new TemplateBinder(_parsedTemplate, _defaults); }