正如问题所说的那样,但是为了向您提供更多信息,我在Asp.NET Mvc应用程序中包含了所有.js
文件,如下所示:
<script src="~/Scripts/jquery-1.10.2.js"></script>
即使我必须在每个页面中包含.js
个文件,以便能够使用jQuery,否则它不起作用。我试图将这些脚本文件包含在BundleConfig
中,令人惊讶的是脚本甚至在布局页面上都没有工作。诀窍是什么?!
答案 0 :(得分:0)
一般来说,你的项目中有一个App_Start / BundleConfig.cs
public class BundleConfig
{
public static readonly string SiteJquery1Bundle = "~/bundles/jquery1";
public static readonly string SiteJquery2Bundle = "~/bundles/jquery2";
public static void RegisterBundles(BundleCollection bundles)
{
// We will choose bundle to render depending on IE version in view
bundles.Add(new Bundle(SiteJquery1Bundle)
.Include("~/Scripts/jquery-1.10.2.js"));
bundles.Add(new Bundle(SiteJquery2Bundle)
.Include("~/Scripts/jquery-2.1.3.min.js"));
}
在您的Shared / _Layout.cshtml视图中添加:
<html>
<head>
<title>...</title>
<!--[if lt IE 9]>
@Scripts.Render(BundleConfig.SiteJquery1Bundle)
<![endif]-->
<!--[if gte IE 9]><!-->
@Scripts.Render(BundleConfig.SiteJquery2Bundle)
<!--<![endif]-->
...
</head>
因此,默认的ASP.NET MVC项目添加了_ViewStart.cshtml,它定义了每个视图中的单个布局。并检查Global.asax.cs中的包注册
protected void Application_Start()
{
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
// ...
}