我遇到了一个问题,在我看来很奇怪.
我通过nuget包控制台安装了bootstrap.
之后,在BundleConfig.cs文件中,我添加了两个要bundles列出的项目:
bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
"~/Scripts/bootstrap.min.js"));
bundles.Add(new StyleBundle("~/Content/bootstrap").Include(
"~/Content/bootstrap.min.css",
"~/Content/bootstrap-theme.min.css"));
Run Code Online (Sandbox Code Playgroud)
当然,这些文件存在于本地.
该_Layout.cshtml文件包含
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<title>@ViewBag.Title</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
@Styles.Render("~/Content/bootstrap")
</head>
<body>
@RenderBody()
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
@RenderSection("scripts", required: false)
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
但是当我看到一个视图(例如登录页面)时,我看到该bundle没有附加bootstrap部分.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<title>Login</title>
<link href="/Content/Site.css" rel="stylesheet"/>
<script src="/Scripts/modernizr-2.6.2.js"></script>
<!-- I expect bootstrap here but it is not displayed -->
</head>
<body>
...
<script src="/Scripts/jquery-1.9.1.js"></script>
<!-- I expect …Run Code Online (Sandbox Code Playgroud) 根据我的理解,一个简单的"〜/ foo"路径应该像MVC 4中的@ Url.Content("〜/")一样工作.但是,我正在尝试这样做并获得许多破碎的路径 -输出HTML时,代字号仍然存在.
所以,例如,我在/Views/Shared/_Layout.cshtml中有这个路径:
<link href="~/Content/Site.css" rel="stylesheet" type="text/css" />
Run Code Online (Sandbox Code Playgroud)
提供的HTML看起来像这样:
<link href="~/Content/Site.css" rel="stylesheet" type="text/css" />
Run Code Online (Sandbox Code Playgroud)
我很确定我也将这个作为一个MVC 4项目运行.web.config中有以下内容:
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Helpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.WebPages, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</assemblies>
</compilation>
Run Code Online (Sandbox Code Playgroud)
......在这一点上,我不确定下一步该寻找什么.有什么建议?