2014-04-04 9 views
5

Sto provando a utilizzare il nuovo controllo webform di .net 4.5 per eseguire il rendering dei bundle nella mia pagina madre. Ho uno ScriptBundle definito nei miei BundleConfig.cs come questo:<webopt: BundleReference> esegue il rendering di ScriptBundle come elementi di collegamento css

bundles.Add(new ScriptBundle("~/bundles/app").Include(
    "~/Scripts/underscore.js", 
    "~/Scripts/backbone.js", 
    "~/Scripts/app/app.js", 
    "~/Scripts/app.validator.js", 
    "~/Scripts/app/views/home.js", 
    "~/Scripts/app/views/about.js", 
    "~/Scripts/app/views/contact.js", 
    "~/Scripts/app/controls/hello.js", 
    "~/Scripts/app/init.js")); 

ho quindi provare a rendere il fascio utilizzando il nuovo <webopt:BundleReference> di controllo:

<webopt:BundleReference ID="AppBundle" runat="server" Path="~/bundles/app" /> 

Ma quando la pagina esegue il rendering, l'uscita è <link> tag, anziché tag:

<link href="/Scripts/underscore.js" rel="stylesheet"/> 
<link href="/Scripts/backbone.js" rel="stylesheet"/> 
<link href="/Scripts/app/app.js" rel="stylesheet"/> 
<link href="/Scripts/app/views/home.js" rel="stylesheet"/> 
<link href="/Scripts/app/views/about.js" rel="stylesheet"/> 
<link href="/Scripts/app/views/contact.js" rel="stylesheet"/> 
<link href="/Scripts/app/controls/hello.js" rel="stylesheet"/> 
<link href="/Scripts/app/init.js" rel="stylesheet"/> 

Questo controllo è inteso solo per il rendering degli stili? O sto facendo qualcosa di sbagliato? Come posso eseguire il rendering di un pacchetto di script utilizzando un controllo webopt e non la sintassi <%: Scripts.Render() %>?

risposta

0

Utilizzo VS2012 e .Net 4.5. Io uso npt il controllo webopt. Mi rendo così:

<head> 
    <asp:PlaceHolder runat="server"> 
    <%: Styles.Render("~/Content/MainContentCSS") %> 
    <%: Scripts.Render("~/bundles/jqueryPlus") %> 
    </asp:PlaceHolder> 
</head> 

dove il mio CSS e JS sono anche definiti in BundleConfig.vb come:

bundles.Add(New ScriptBundle("~/bundles/jqueryPlus").Include(
      "~/Scripts/modernizr-{version}.js", 
      "~/Scripts/jquery-{version}.js", 
      "~/Scripts/jquery-ui-{version}.js", 
      "~/ig_ui/js/infragistics.js", 
      "~/Site.Master.js")) 

bundles.Add(New StyleBundle("~/Content/MainContentCSS").Include(
        "~/Content/Site.css", 
        "~/Content/Site-overrides.min.css", 
        "~/Content/rs-custom-controls.min.css", 
        "~/ig_ui/css/structure/infragistics.css", 
        "~/Examiner/Claim.master.min.css")) 

e rende come:

<link href="/Content/Site.css" rel="stylesheet"/> 
<link href="/Content/Site-overrides.min.css" rel="stylesheet"/> 
<link href="/Content/rs-custom-controls.min.css" rel="stylesheet"/> 
<link href="/ig_ui/css/structure/infragistics.css" rel="stylesheet"/> 
<link href="/Examiner/Claim.master.min.css" rel="stylesheet"/> 
<script src="/Scripts/jquery-2.1.3.js"></script> 
<script src="/Scripts/jquery-ui-1.11.2.js"></script> 
<script src="/Scripts/modernizr-2.8.3.js"></script> 
<script src="/ig_ui/js/infragistics.js"></script> 
<script src="/Site.Master.js"></script>