Quiero crear una ruta desde una clase de utilidad que no tenga acceso a ViewContext.¿Cómo construyo una ruta sin ViewContext en ASP.NET MVC?
¿Esto es posible? No parece haber ningún equivalente de ViewContext.Current
He intentado buscar en todos los constructores de Ruteo y HttpContext pero no puedo llegar a lo que quiero.
Esto es lo que estoy buscando, aunque esto no funciona porque RouteTable.Routes
es del tipo RouteCollection
y no RouteData
. Tan cerca - sin embargo tan lejos :-)
RequestContext requestContext = new RequestContext(HttpContext.Current, RouteTable.Routes);
UrlHelper url = new UrlHelper(requestContext);
var urlString = url.RouteUrl(new {controller="DynamicImage", action="Button", text="Hello World"});
Nota: RequestContest es de tipo System.Web.Routing.RequestContext y no HttpContext
Me sorprendió que que realmente funciona. Todavía no estoy seguro de cuáles son las implicaciones de tener un objeto RouteData() vacío. tal vez usa la ruta actual como una 'base' para la nueva ruta? ¿nadie sabe? –
He actualizado mi respuesta –
eu-ge-ne = ge-ni-us, muchas gracias –