Tengo una página ASP.NET MVC, donde intento mostrar URL amigables.ASP MVC URL amigable e imágenes de ruta relativa
Por lo tanto, tengo una vista de categoría en el controlador de inicio, que acepta un valor de categoría clave para obtener el contenido de la página.
Por ejemplo: http://localhost/Home/Category/Bikes obtiene el contenido de la bicicleta.
en mis Global.asax.cs, tengo el siguiente para manejar esto:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Category",
"{controller}/{action}/{categoryKey}",
new { controller = "Home", action = "Category", categoryKey = "" });
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
Esto funciona muy bien, y se pone el contenido, sin embargo, yo estoy recibiendo el contenido de un sistema de gestión de contenidos , para una fácil edición. Cuando se agrega una imagen en la gestión de contenidos, que añade la imagen con una ruta relativa:
<img src="../AdminUploadContent/bikes.gif" alt="Bikes" />
Ahora, si yo Goto "http://localhost/Home/Category", y que la etiqueta de imagen es en la página base, que se tire hacia arriba el imagen. Sin embargo, si goto "http://localhost/Home/Category/", o agrego la categoría real de "/ Inicio/Categoría/Bicicletas" /, la imagen no aparece. Las propiedades de la imagen apuntan a "http://localhost/Home/AdminUploadContent/bikes.gif".
¿Hay algo que pueda poner en mi archivo Global.aspx.cs para manejar la ruta relativa? Incluso si edito manualmente la gestión de contenido para agregar ../../AdminUploadContent/bikes.gif, está cortando el primero ../, ya que está haciendo una validación.
No recomendaría mezclar el lenguaje de asp.net Webforms con asp.net mvc. Se adhieren a este
– Roman