在asp.net应用程序中的Bundle.config中包含js

时间:2017-05-17 14:26:15

标签: javascript css asp.net bundle

我想捆绑我的css&我的asp.net Web应用程序的js。 CSS工作正常但它也将js文件作为css。可能我做了一些错误的配置。当我提交我的申请时看看页面来源,它给出了这样的节目。

<link href="/Content/bootstrap.css" rel="stylesheet"/>
<link href="/Content/Site.css" rel="stylesheet"/>
<link href="/Content/owlcarousel.css" rel="stylesheet"/>
<link href="/Scripts/jquery.js" rel="stylesheet"/>
<link href="/Scripts/owlcarousel.js" rel="stylesheet"/>

Bundle.config

<?xml version="1.0" encoding="utf-8" ?>
<bundles version="1.0">
  <styleBundle path="~/Content/css">
    <include path="~/Content/bootstrap.css" />
    <include path="~/Content/Site.css" />
    <include path="~/Content/owlcarousel.css" />
  </styleBundle>

  <scriptBundle path="~/Scripts/js">
    <include path="~/Scripts/jquery.js" />
    <include path="~/Scripts/owlcarousel.js" />
  </scriptBundle>
</bundles>

母版

<asp:PlaceHolder runat="server">
        <%: Scripts.Render("~/bundles/modernizr") %>
    </asp:PlaceHolder>
    <webopt:bundlereference runat="server" path="~/Content/css" />
    <webopt:bundlereference runat="server" path="~/Scripts/js" />

1 个答案:

答案 0 :(得分:0)

虽然我不知道解决方案的确切原因,但我可能会冒一些猜测。

您似乎需要使用<asp:PlaceHolder runat="server"><%: Scripts.Render("~/Scripts/js") %></asp:PlaceHolder>来获取Bundle.config scriptBundle引用以正确呈现。

我在搜索过程中看到了一篇文章(现在遗憾地丢失了),注意到&#34; webopt:BundleReference&#34;调用Styles.Render ...这是我怀疑你和我所经历的,即Microsoft将Styles.Render应用于scriptBundle引用而不是Scripts.Render!