From c64c70b183e8fea3793a7c7ee25958d56ca5a30d Mon Sep 17 00:00:00 2001 From: Steve Smith Date: Fri, 11 Jan 2019 12:53:08 -0500 Subject: [PATCH] Add LinkGenerator to AllServices middleware (#187) * Adding slugify parameter transform Fixes #172 * Cleaning up code And slugifying my orders * Added links to allservices using LinkGenerator --- src/Web/Startup.cs | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/Web/Startup.cs b/src/Web/Startup.cs index 3c3a437..8fe097c 100644 --- a/src/Web/Startup.cs +++ b/src/Web/Startup.cs @@ -5,6 +5,7 @@ using Microsoft.AspNetCore.Identity; using Microsoft.AspNetCore.Identity.UI; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.ApplicationModels; +using Microsoft.AspNetCore.Routing; using Microsoft.EntityFrameworkCore; using Microsoft.eShopWeb.ApplicationCore.Interfaces; using Microsoft.eShopWeb.ApplicationCore.Services; @@ -144,12 +145,12 @@ namespace Microsoft.eShopWeb.Web } // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. - public void Configure(IApplicationBuilder app, IHostingEnvironment env) + public void Configure(IApplicationBuilder app, IHostingEnvironment env, LinkGenerator linkGenerator) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); - ListAllRegisteredServices(app); + ListAllRegisteredServices(app, linkGenerator); app.UseDatabaseErrorPage(); } else @@ -183,11 +184,19 @@ namespace Microsoft.eShopWeb.Web }); } - private void ListAllRegisteredServices(IApplicationBuilder app) + private void ListAllRegisteredServices(IApplicationBuilder app, LinkGenerator linkGenerator) { + var homePageLink = linkGenerator.GetPathByAction("Index", "Catalog"); + var loginLink = linkGenerator.GetPathByAction("SignIn", "Account"); app.Map("/allservices", builder => builder.Run(async context => { var sb = new StringBuilder(); + sb.Append("Return to site | "); + sb.Append("Login to site"); sb.Append("

All Services

"); sb.Append(""); sb.Append("");
TypeLifetimeInstance