Asp.net mvc MVC网站图像路径在发布版本中无效

Asp.net mvc MVC网站图像路径在发布版本中无效,asp.net-mvc,asp.net-mvc-4,Asp.net Mvc,Asp.net Mvc 4,在本地运行my mvc网站(VS IIS)时,正确显示图像: css代码段: .sprites { background: transparent url(../images/sprites.png) no-repeat 0 0; } 但是,当站点发布到服务器或本地IIS(不是VS IIS)时,无法加载映像(提供无效路径) 在服务器上正确显示图像的唯一方法是修改css文件,而不是。/images/sprites.png“具有”/content/images/sprites.png“ 为

在本地运行my mvc网站(VS IIS)时,正确显示图像:

css代码段:

.sprites {
    background: transparent url(../images/sprites.png) no-repeat 0 0;
}
但是,当站点发布到服务器或本地IIS(不是VS IIS)时,无法加载映像(提供无效路径)

在服务器上正确显示图像的唯一方法是修改css文件,而不是
。/images/sprites.png“
具有
”/content/images/sprites.png“


为什么呢

看起来CSS中的路径没有指向正确的图像位置<代码>。表示上一级,我假设目录没有图像文件夹,因此必须明确指定内容/图像文件夹。

css路径必须与两个系统上的图像路径相同。 是这样吗?

我想起来了:

MVC4附带
\App\u Start\BundleConfig.cs
文件,用于最小化css/js脚本

每当我发布我的网站(版本)时,它都会调用\Content\css(最小化文件),其中包含指向我的图像的路径(“../images/etc…”),这是不正确的,因为css文件不再位于/Content/Styles/style.css中,而是/Content/css(最小化版本)

我不得不修改它:

发件人:

致:

在my layout.cshtml中:

@Styles.Render("~/Content/styles/css")

但它确实在本地使用“./图像”。为什么把同一个网站移到另一台计算机的IIS上会有不同??。。可能将其指向与远程服务器上不同的文件路径。使用Fiddler2截获HTTP请求并查看图像指向的位置。嘿,这可能会对您有所帮助。@Shane KM-
可能会将其指向与远程服务器上不同的文件路径。使用Fiddler2拦截HTTP请求并查看图像指向的位置。(请求将以红色突出显示)这是因为绑定不会在调试模式下发生,这可能是您在本地运行项目的方式-
        bundles.Add(new StyleBundle("~/Content/styles/css").Include(
                "~/Content/styles/all.css",
@Styles.Render("~/Content/styles/css")