在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()中的脚本中。但它对我不起作用。然后有人告诉我要更改已发布的网络配置。但也没有用。
答案 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文件夹从解决方案复制到已发布的文件夹以确保它