void Context_BeginRequest(object sender, EventArgs e) { if (PrefixProvider == null) { PrefixProvider = DependencyResolver.Current.GetService <IPathPrefixProvider>(); } if (ModeProvider == null) { ModeProvider = DependencyResolver.Current.GetService <IModeProvider>(); } var context = ((HttpApplication)sender).Context; if (!context.Request.Path.StartsWith(PrefixProvider.Prefix, StringComparison.InvariantCultureIgnoreCase)) { return; } ModeProvider.SetIsPageEditing(context, true); context.RewritePath("/" + context.Request.Path.Substring(PrefixProvider.Prefix.Length)); }
public PageEditingMiddleware(IModeProvider modeProvider, IPathPrefixProvider pathPrefixProvider, RequestDelegate next) { ModeProvider = modeProvider; PathPrefixProvider = pathPrefixProvider; Next = next; }