LmC*_*LmC 2 css c# asp.net-mvc jquery razor
我在浏览器控制台中收到以下错误消息:
GET http://*:54559/Scripts/403(Forbidden)
http:// :54559/Content/css / 400(错误请求)
未捕获的ReferenceError:$未定义
在我的_Layout.shtml中,我使用以下代码尝试包含css/bootstrap.
@Styles.Render("~/Content/css/*")
<!-- JavaScript -->
@Scripts.Render("~/Scripts/")
@RenderSection("scripts", required: false)
<script>
// Activates the Carousel
$('.carousel').carousel({
interval: 5000
})
</script>
Run Code Online (Sandbox Code Playgroud)
文件路径看起来不错,因为在我的项目中css位于"Content/css",脚本只是顶层的一个名为"Scripts"的文件夹
有任何想法吗?
~/Content/css/并且~/Scripts/不是文件路径.它们是包名称,因此如果您没有Bundle文件,请按照下列步骤操作:
在您的App_Start文件夹中添加一个BundleConfig类:
public class BundleConfig
{
}
Run Code Online (Sandbox Code Playgroud)
添加如下RegisterBundles方法:
public static void RegisterBundles(BundleCollection bundles)
{
}
Run Code Online (Sandbox Code Playgroud)
然后你可以添加一个包,将这段代码写入你的方法:
bundles.Add(new StyleBundle("~/Content/css").Include("~/Content/site.css"));
Run Code Online (Sandbox Code Playgroud)
这~/Content/css是您的Bundle Name,~/Content/site.css是您的Css文件路径.如果您的css文件位于不同的路径,请更改它.
现在还有一个步骤,打开Global.asax文件并将此代码添加到您的Application_Start:
BundleConfig.RegisterBundles(BundleTable.Bundles);
Run Code Online (Sandbox Code Playgroud)
然后你可以渲染你的Bundle:
@Styles.Render("~/Content/css")
Run Code Online (Sandbox Code Playgroud)
此外,您还可以使用一个包渲染多个文件,为此,请在此处添加所有文件路径,如下所示:
bundles.Add(new StyleBundle("~/Content/css")
.Include("~/Content/site.css",
"~/Content/sample.css",
"~/Content/sample2.css"));
Run Code Online (Sandbox Code Playgroud)
PS:你也可以看一下这个关于使用Bundle的好处的问题:ASP.NET MVC4 jquery/javascript包的用法