From d3b15c4a41dba0f00b039b7ee1fc4a5022bf93f9 Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Tue, 12 May 2020 19:12:57 +0200 Subject: [PATCH] AB6455 Fix missing umbracoContextAccessor in ctors --- .../ActionResults/RedirectToUmbracoPageResult.cs | 9 ++++++--- .../ActionResults/RedirectToUmbracoUrlResult.cs | 3 ++- src/Umbraco.Web.Website/Controllers/SurfaceController.cs | 8 ++++---- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/Umbraco.Web.Website/ActionResults/RedirectToUmbracoPageResult.cs b/src/Umbraco.Web.Website/ActionResults/RedirectToUmbracoPageResult.cs index 88ad704938..54c220cd55 100644 --- a/src/Umbraco.Web.Website/ActionResults/RedirectToUmbracoPageResult.cs +++ b/src/Umbraco.Web.Website/ActionResults/RedirectToUmbracoPageResult.cs @@ -66,10 +66,11 @@ namespace Umbraco.Web.Website.ActionResults /// /// /// - public RedirectToUmbracoPageResult(int pageId, IPublishedUrlProvider publishedUrlProvider) + public RedirectToUmbracoPageResult(int pageId, IPublishedUrlProvider publishedUrlProvider, IUmbracoContextAccessor umbracoContextAccessor) { _pageId = pageId; _publishedUrlProvider = publishedUrlProvider; + _umbracoContextAccessor = umbracoContextAccessor; } /// @@ -78,11 +79,12 @@ namespace Umbraco.Web.Website.ActionResults /// /// /// - public RedirectToUmbracoPageResult(int pageId, NameValueCollection queryStringValues, IPublishedUrlProvider publishedUrlProvider) + public RedirectToUmbracoPageResult(int pageId, NameValueCollection queryStringValues, IPublishedUrlProvider publishedUrlProvider, IUmbracoContextAccessor umbracoContextAccessor) { _pageId = pageId; _queryStringValues = queryStringValues; _publishedUrlProvider = publishedUrlProvider; + _umbracoContextAccessor = umbracoContextAccessor; } /// @@ -91,11 +93,12 @@ namespace Umbraco.Web.Website.ActionResults /// /// /// - public RedirectToUmbracoPageResult(int pageId, string queryString, IPublishedUrlProvider publishedUrlProvider) + public RedirectToUmbracoPageResult(int pageId, string queryString, IPublishedUrlProvider publishedUrlProvider, IUmbracoContextAccessor umbracoContextAccessor) { _pageId = pageId; _queryStringValues = ParseQueryString(queryString); _publishedUrlProvider = publishedUrlProvider; + _umbracoContextAccessor = umbracoContextAccessor; } /// diff --git a/src/Umbraco.Web.Website/ActionResults/RedirectToUmbracoUrlResult.cs b/src/Umbraco.Web.Website/ActionResults/RedirectToUmbracoUrlResult.cs index 929cdb85e6..6a7b4d678d 100644 --- a/src/Umbraco.Web.Website/ActionResults/RedirectToUmbracoUrlResult.cs +++ b/src/Umbraco.Web.Website/ActionResults/RedirectToUmbracoUrlResult.cs @@ -32,7 +32,8 @@ namespace Umbraco.Web.Website.ActionResults if (context is null) throw new ArgumentNullException(nameof(context)); var destinationUrl = _umbracoContext.OriginalRequestUrl.PathAndQuery; - var tempData = context.HttpContext.RequestServices.GetRequiredService(); + var tempDataDictionaryFactory = context.HttpContext.RequestServices.GetRequiredService(); + var tempData = tempDataDictionaryFactory.GetTempData(context.HttpContext); tempData?.Keep(); context.HttpContext.Response.Redirect(destinationUrl); diff --git a/src/Umbraco.Web.Website/Controllers/SurfaceController.cs b/src/Umbraco.Web.Website/Controllers/SurfaceController.cs index 22b50250af..2f2984cf21 100644 --- a/src/Umbraco.Web.Website/Controllers/SurfaceController.cs +++ b/src/Umbraco.Web.Website/Controllers/SurfaceController.cs @@ -48,18 +48,18 @@ namespace Umbraco.Web.Website.Controllers /// protected RedirectToUmbracoPageResult RedirectToUmbracoPage(int pageId) { - return new RedirectToUmbracoPageResult(pageId, _publishedUrlProvider); + return new RedirectToUmbracoPageResult(pageId, _publishedUrlProvider, UmbracoContextAccessor); } /// - /// Redirects to the Umbraco page with the given id and passes provided querystring + /// Redirects to the Umbraco page with the given id and passes provided querystring /// /// /// /// protected RedirectToUmbracoPageResult RedirectToUmbracoPage(int pageId, NameValueCollection queryStringValues) { - return new RedirectToUmbracoPageResult(pageId, queryStringValues, _publishedUrlProvider); + return new RedirectToUmbracoPageResult(pageId, queryStringValues, _publishedUrlProvider, UmbracoContextAccessor); } /// @@ -70,7 +70,7 @@ namespace Umbraco.Web.Website.Controllers /// protected RedirectToUmbracoPageResult RedirectToUmbracoPage(int pageId, string queryString) { - return new RedirectToUmbracoPageResult(pageId, queryString, _publishedUrlProvider); + return new RedirectToUmbracoPageResult(pageId, queryString, _publishedUrlProvider, UmbracoContextAccessor); } ///