gpt4 book ai didi

asp.net-mvc-4 - 我发布到 azure 后,与 MVC4 bundle 不起作用

转载 作者:行者123 更新时间:2023-12-02 17:45:09 28 4
gpt4 key购买 nike

您好,我正在尝试为我的应用程序 bundle 脚本。我的调试正在工作,如果我使用 Web.debug 发布,一切都会正常。但是当我使用 Web.releases 发布时,我的脚本不会加载。一切都在本地运行,只有当我从 VS2012 发布到 Azure 时才会停止。以下是我创建 bundle 的方法。

namespace BAT.App_Start
{
public class BundleConfig
{
public static void RegisterBundles(BundleCollection bundles)
{
//BundleTable.EnableOptimizations = true;

bundles.Add(new ScriptBundle("~/Content/MasterCss")
.Include("~/Content/bootstrap.css")
.Include("~/Content/bootstrap-responsive.css")
.Include("~/Content/CSS/site.css"));

bundles.Add(new ScriptBundle("~/Scripts/MasterScripts")
.Include("~/Scripts/jquery-{version}.js")
.Include("~/Scripts/bootstrap.js"));

bundles.Add(new ScriptBundle("~/Scripts/Validation")
.Include("~/Scripts/jquery.validate.js")
.Include("~/Scripts/jquery.validate.unobtrusive.js"));
}
}
}

未注释的行破坏了调试构建

这是我称之为 bundle 的布局

@using System.Web.Optimization
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>@ViewBag.Title Business Analysis Tool </title>

@Styles.Render("~/Content/MasterCss")
</head>

<body>
<div class="container-fluid">
<div class="row-fluid"> @RenderPage("~/Views/Shared/_Header.cshtml") </div>
<div class="row-fluid"> @RenderBody() </div>
<div class="row-fluid"> @RenderPage("~/Views/Shared/_Footer.cshtml") </div>
</div>
@Scripts.Render("~/Scripts/MasterScripts")
@RenderSection("scriptholder", false)
</body>
</html>

这是我的 Release.Config

<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<system.web>
<compilation xdt:Transform="RemoveAttributes(debug)" />
</system.web>
</configuration>

这是我在页面上使用 CTRL+U 检查 bundle 脚本时出现的错误的链接 http://bat.azurewebsites.net/Content/MasterCss?v=htASNz4hgFFA40tt0CVZdpwQudN8ZW4429UjRQZQJms1

这似乎与缩小有关。我已经遵循了一些教程并在这里阅读了其他帖子,但他们的解决方案对我不起作用

最佳答案

这个问题的修复非常简单:

我有以下内容:

bundles.Add(new StyleBundle("~/Content/css").Include(
"~/Content/bootstrap.css",
"~/Content/site.css"));

我的解决方案中还有一个文件夹:

/Content/Css

这就是问题所在,样式包与我的解决方案中的文件夹同名。

将样式包重命名为:

 bundles.Add(new StyleBundle("~/scripts/css").Include(
"~/Content/bootstrap.css",
"~/Content/site.css"));

并且(记住)更改引用它的位置,_Layout.cshmtl

因此,为了明确这一点,如果您的 stylebundle 名称与解决方案中的实际文件夹相同,那么您就会遇到此问题。只需将其命名为不同的名称即可。

关于asp.net-mvc-4 - 我发布到 azure 后,与 MVC4 bundle 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16898429/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com