图像不在浏览器中渲染 - MVC3剃须刀

时间:2012-05-12 18:11:02

标签: asp.net asp.net-mvc-3 image web

我正在尝试学习MVC3剃须刀,但每当我尝试显示存储在本地机器上的图像时,我都会遇到麻烦。图像显示为图像占位符(如下所示),而不是浏览器呈现图像。

placeholder image

我试图将其简化为只使用常规的html img标签而没有运气。但是,当它指向一个托管在网络上的图像时,一切正常。路径是正确的,因为它显示的是占位符而不是红色x(当它找不到图像时显示)。

<img id="img" src="file:///C:/WebSite/Images/img1.jpg" alt="" />

我唯一能想到的是某种权限或配置未正确设置。我已经设置了导致图像和图像本身的文件夹的权限。我的Web.config是默认的,我对global.aspx的唯一更改是注册路由。

public static void RegisterRoutes(RouteCollection routes)
{
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

    routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}/{id}", // URL with parameters
                new { controller = "Home", action = "Trending", id = UrlParameter.Optional } // Parameter defaults
    );
}

帮助?

1 个答案:

答案 0 :(得分:2)

您可以使用Url.Content帮助程序,假设您的Images文件夹位于应用程序的根目录下,它将类似于:

<img id="img" src="@Url.Content("~/Images/img1.jpg")" alt="" />