public static void MapCustomRoute(this RouteCollection routes, string url) { PageRouteHandler handler = new PageRouteHandler("~/default.aspx"); Route myRoute = new Route(url, handler); routes.Add(myRoute); }
public ActionResult ResetPassword() { PageRouteHandler.RegisterCustomOutputCacheVariation(new ResetPasswordCacheVariation()); var query = this.HttpContext.Request.QueryString; var queryString = query.ToString(); var securityToken = queryString; var resetComplete = false; var error = string.Empty; var index = queryString.IndexOf("&resetComplete"); if (index > 0) { securityToken = queryString.Substring(0, index); resetComplete = Convert.ToBoolean(query["resetComplete"]); error = query["error"]; } var model = this.Model.GetResetPasswordViewModel(securityToken, resetComplete, error); var fullTemplateName = this.resetPasswordTemplatePrefix + this.ResetPasswordTemplate; return(this.View(fullTemplateName, model)); }
public static string GetFileVirtualPathFromFriendlyUrl(this HttpRequest request) { string ret = string.Empty; ret = request.GetFriendlyUrlFileVirtualPath(); if (ret == string.Empty) { foreach (RouteBase r in RouteTable.Routes) { if (r.GetType() == typeof(Route)) { Route route = (Route)r; if ("/" + route.Url == request.Path) { if (route.RouteHandler.GetType() == typeof(PageRouteHandler)) { PageRouteHandler handler = (PageRouteHandler)route.RouteHandler; ret = handler.VirtualPath; } break; } } } } return(ret); }
public void GetHandler_WhichReturnsIPageWithControls_SetsControls() { //arrange IEnumerable <string> controlNames = null; var routeData = new RouteData(); routeData.DataTokens.Add("controls", new[] { "SomeControl" }); var httpContext = new Mock <HttpContextBase>(); var requestContext = new RequestContext(httpContext.Object, routeData); var pageWithControls = new Mock <IPageWithControls>(); pageWithControls.Setup(p => p.SetControls(It.IsAny <IEnumerable <string> >())).Callback <IEnumerable <string> >( c => controlNames = c); var pageBuilder = new Mock <ISubtextPageBuilder>(); pageBuilder.Setup(b => b.CreateInstanceFromVirtualPath(It.IsAny <string>(), It.IsAny <Type>())).Returns( pageWithControls.Object); IRouteHandler subtextRouteHandler = new PageRouteHandler("~/aspx/Dtp.aspx", pageBuilder.Object, new Mock <IServiceLocator>().Object); //act subtextRouteHandler.GetHttpHandler(requestContext); //assert. Assert.AreEqual("SomeControl", controlNames.First()); }
IHttpHandler IRouteHandler.GetHttpHandler(RequestContext requestContext) { //This wires umbraco bits up var mvcHandler = base.GetHttpHandler(requestContext); //use the page route handler to render webforms var pageHandler = new PageRouteHandler("~/Views/Search/Search.aspx", false); return(pageHandler.GetHttpHandler(requestContext)); }
public void Should_Resolve_Route_AreaName_Correctly() { var dictionary = new RouteValueDictionary(); dictionary["area"] = "TestAreaName"; var handler = new PageRouteHandler("~/Views"); var route = new Route("url", null, null, dictionary, handler); var routeData = new RouteData(route, handler); var areaName = routeData.GetAreaName(); Assert.AreEqual(areaName, "TestAreaName"); }
/// <summary> /// Adds cache dependencies for the current response. /// </summary> /// <param name="controller">The controller.</param> /// <param name="contentType">The type of the content.</param> /// <param name="providerName">The name of the provider.</param> public static void AddCacheVariations(this Controller controller, Type contentType, string providerName = null) { if (controller == null) { throw new ArgumentNullException("controller"); } if (contentType == null) { throw new ArgumentNullException("contentType"); } PageRouteHandler.RegisterContentListCacheVariation(contentType, providerName); }
public void Init(HttpApplication context) { if (context.Context.Items[RoutingModule._hasBeenRegisteredKey] != null) { return; } var path = ConfigurationManager.AppSettings["CmdHereGenRoute"]; if (String.IsNullOrEmpty(path)) { throw new ConfigurationErrorsException("Set appSettings for 'CmdHereGenRoute' to point to the command prompt generator (images/App/CommandPromptHere)."); } var pageRouteHandler = new PageRouteHandler("~/Views/WebForms/CmdHereGen.aspx"); var pageRoute = new Route(path, pageRouteHandler); RouteTable.Routes.Add(pageRoute); context.Context.Items[RoutingModule._hasBeenRegisteredKey] = RoutingModule._hasBeenRegisteredKey; }
public void Page_Load(object sender, EventArgs e) { // Workaround for Cassini issue with request to /, IIS 6 and IIS 7 Classic mode. // In IIS7 Integrated mode, Default.aspx can be deleted. var serviceLocator = Bootstrapper.ServiceLocator; var pipelineService = new PipelineService(new HttpContextWrapper(HttpContext.Current), serviceLocator); var route = new RootRoute(HostInfo.Instance.BlogAggregationEnabled, serviceLocator); IRouteHandler routeHandler = new PageRouteHandler( HostInfo.Instance.BlogAggregationEnabled ? "~/aspx/AggDefault.aspx" : "~/aspx/Dtp.aspx", serviceLocator.GetService <ISubtextPageBuilder>(), serviceLocator); pipelineService.ProcessRootRequest(route, routeHandler); }
/// <summary> /// Renders appropriate view depending on the <see cref="TemplateName"/> /// </summary> /// <returns> /// The <see cref="ActionResult"/>. /// </returns> public ActionResult Index() { if (SystemManager.CurrentHttpContext != null) { var cacheDependentNavigationModel = this.Model as IHasCacheDependency; if (cacheDependentNavigationModel != null) { this.AddCacheDependencies(cacheDependentNavigationModel.GetCacheDependencyObjects()); } } if (this.OutputCache.VaryByAuthenticationStatus || this.OutputCache.VaryByUserRoles) { PageRouteHandler.RegisterCustomOutputCacheVariation(new NavigationOutputCacheVariation(this.OutputCache)); } var fullTemplateName = this.templateNamePrefix + this.TemplateName; return(this.View(fullTemplateName, this.Model)); }
private void RegisterCustomOutputCacheVariation() { PageRouteHandler.RegisterCustomOutputCacheVariation(new UserProfileMvcOutputCacheVariation()); }