Fix for issue 13017 - BeginUmbracoForm doesn't work with custom umbraco routes (#13103)
* Fix issue with custom Umbraco routes not working after submitting to a Surface controller * Added comments * Fixed breaking changes * Fixed test by using correct new ctor * Fixed initializtion of UmbracoRouteValueTransformer due to ambiguous ctor Co-authored-by: Bjarke Berg <mail@bergmania.dk>
This commit is contained in:
committed by
Bjarke Berg
parent
caed5bcb13
commit
f28b4c1279
@@ -1,9 +1,14 @@
|
||||
using Microsoft.AspNetCore.DataProtection;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.AspNetCore.Routing;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.DependencyInjection.Extensions;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Microsoft.Extensions.Options;
|
||||
using Umbraco.Cms.Core.DependencyInjection;
|
||||
using Umbraco.Cms.Core.Routing;
|
||||
using Umbraco.Cms.Core.Services;
|
||||
using Umbraco.Cms.Core.Web;
|
||||
using Umbraco.Cms.Infrastructure.DependencyInjection;
|
||||
using Umbraco.Cms.Web.Common.Middleware;
|
||||
using Umbraco.Cms.Web.Common.Routing;
|
||||
@@ -40,9 +45,21 @@ public static partial class UmbracoBuilderExtensions
|
||||
builder.Services.AddDataProtection();
|
||||
builder.Services.AddAntiforgery();
|
||||
|
||||
builder.Services.AddSingleton<UmbracoRouteValueTransformer>();
|
||||
builder.Services.AddSingleton<UmbracoRouteValueTransformer>(x => new UmbracoRouteValueTransformer(
|
||||
x.GetRequiredService<ILogger<UmbracoRouteValueTransformer>>(),
|
||||
x.GetRequiredService<IUmbracoContextAccessor>(),
|
||||
x.GetRequiredService<IPublishedRouter>(),
|
||||
x.GetRequiredService<IRuntimeState>(),
|
||||
x.GetRequiredService<IUmbracoRouteValuesFactory>(),
|
||||
x.GetRequiredService<IRoutableDocumentFilter>(),
|
||||
x.GetRequiredService<IDataProtectionProvider>(),
|
||||
x.GetRequiredService<IControllerActionSearcher>(),
|
||||
x.GetRequiredService<IPublicAccessRequestHandler>(),
|
||||
x.GetRequiredService<IUmbracoVirtualPageRoute>()
|
||||
));
|
||||
builder.Services.AddSingleton<IControllerActionSearcher, ControllerActionSearcher>();
|
||||
builder.Services.TryAddEnumerable(Singleton<MatcherPolicy, NotFoundSelectorPolicy>());
|
||||
builder.Services.AddSingleton<IUmbracoVirtualPageRoute, UmbracoVirtualPageRoute>();
|
||||
builder.Services.AddSingleton<IUmbracoRouteValuesFactory, UmbracoRouteValuesFactory>();
|
||||
builder.Services.AddSingleton<IRoutableDocumentFilter, RoutableDocumentFilter>();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user