Url.Content () no funciona en direcciones URL complejas

yo tengoUrl.Content() Fragmentos de todas partes en mis puntos de vista. Funcionan bien en páginas con una URL simple, pero no cuando la URL se alarga.

Aquí hay una muestra:

<img src="@Url.Content("~/Content/Images/logo.png")" id="logo">

Esto funciona bien cuando estoy en la página de inicio o en una página con URLlocalhost:8080/s/chocolate (que muestra el resultado de la búsqueda "chocolate".

Pero cuando intento agregar algunas mejoras, por ejemplo,localhost:8080/s/chocolate/b/lindt (lo que significa que filtra los resultados anteriores a solo los de la marca Lindt), ya no funciona. En este caso,Url.Content puntos a/s/chocolate/Content/Images/logo.png, lo que obviamente falla.

Es como siUrl.Content solo sube 2 niveles hasta la ubicación actual en lugar de usar la raíz real de la aplicación web. Creo que tiene sentido en la convención que las URL están en el formulariohost / controlador / acción, pero aquí tengo un esquema de URL más complejo (uso el módulo de reescritura de URL para hacer coincidir estos fragmentos de URL con los parámetros de acción).

¿Hay alguna manera de decirle al ayudante que vaya a la raíz real, o cualquier otra solución a este problema?

(Por cierto, estoy usando MVC 4)

EDITAR: Como respondió Felipe, acabo de descubrir que Url.Content ya no es necesario con MVC 4. Eso funciona para todas las imágenes de "diseño" con una ruta constante. Sin embargo, uso muchas imágenes donde la ruta se construye en parte con algunos datos, por ejemplo.

<img src="@Url.Content(string.Format("~/Content/Images/stores/{0}.png", cart.Store.Retailer.Id))"/>

Simplemente quité el Url.content, como tal:

<img src="@string.Format("~/Content/Images/stores/{0}.png", Model.PreferedCart.Store.Retailer.Id)"/>

Cuando se renderiza, esto da el siguiente src:~/Content/Images/stores_v2/Fr_SimplyMarket.png. los~ Estando todavía aquí, la imagen no se encuentra. ¿Cómo puedo arreglar eso?

Respuestas a la pregunta(1)

Su respuesta a la pregunta