Css和Js路径在mvc 4发布的应用程序中不起作用

时间:2014-05-22 12:51:19

标签: asp.net-mvc-4

在VS 2012中,我的项目运行正常。但是当我托管它本地IIS时,它找不到css和js文件。 在我的项目中,文件链接如

<link href="~/CSS/layout.css" rel="stylesheet" type="text/css" />
<link href="~/CSS/color.css" rel="stylesheet" type="text/css" />

    

在托管后我得到了

<link href="/ApplicationTemplate/CSS/color.css " rel="stylesheet" type="text/css" />
<link href="/ApplicationTemplate/CSS/bootstrap.css " rel="stylesheet" type="text/css"/>

我还尝试解决问题,将css放在@ Url.Content()和@ Scripts.Render()中的脚本中。但它对我不起作用。然后有人告诉我要更改已发布的网络配置。但也没有用。

1 个答案:

答案 0 :(得分:1)

您应该使用Url.Content()帮助程序来避免此类问题。它使用相对路径生成url,并且不会出现这样的问题。

<link href="@Url.Content("~/CSS/layout.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/CSS/color.css")" rel="stylesheet" type="text/css" />

还要确保CSS和Scripts文件夹位于项目的根目录中。

注意:有时这也会发生在发布中,某些css和js文件未发布在已发布的文件夹中,因此将css,scripts和js文件夹从解决方案复制到已发布的文件夹以确保它