2016-03-25 14 views
6

डिफ़ॉल्ट _Layout.cshtml फ़ाइल में स्क्रिप्ट तो जैसे "पर्यावरण" में परिभाषित कर रहे हैं:एएसपी.नेट कोर एमवीसी में "@ सेक्शन" के समतुल्य?

<environment names="Development"> 
    <script src="~/lib/jquery/dist/jquery.js"></script> 
    <script src="~/lib/bootstrap/dist/js/bootstrap.js"></script> 
    <script src="~/js/site.js" asp-append-version="true"></script> 
</environment> 
<environment names="Staging,Production"> 
    <script src="https://ajax.aspnetcdn.com/ajax/jquery/jquery-2.1.4.min.js" 
        asp-fallback-src="~/lib/jquery/dist/jquery.min.js" 
        asp-fallback-test="window.jQuery"> 
    </script> 
    <script src="https://ajax.aspnetcdn.com/ajax/bootstrap/3.3.5/bootstrap.min.js" 
        asp-fallback-src="~/lib/bootstrap/dist/js/bootstrap.min.js" 
        asp-fallback-test="window.jQuery && window.jQuery.fn && window.jQuery.fn.modal"> 
    </script> 
    <script src="~/js/site.min.js" asp-append-version="true"></script> 
</environment> 

और वह नीचे @RenderSection("scripts", required: false)

स्क्रिप्ट है मैं एक खंड (लागू करने के लिए इस मामले में नहीं कर पा रहे " ") किसी भी अलग .cshtml फ़ाइल में ऐसा लगता है कि वे कोर

में" @section "से छुटकारा पाये हैं, इसलिए मैं विशिष्ट दृश्यों के लिए विशिष्ट स्क्रिप्ट जोड़ना चाहता हूं। इस बारे में जाने का नया तरीका क्या है? क्या मैं बस _Layout में सबकुछ डंप करता हूं?

उत्तर

24

मुझे लगता है कि आप गलत हैं। यह एएसपी.नेट कोर में ठीक काम करता है। मैं अपने _layout.cshtml

@RenderSection("scripts", required: false) 

में यह किया है और मेरे विचार से एक में मैं स्क्रिप्ट वहाँ जोड़ रहा इस तरह:

@section Scripts { 
    @if (Model.CanEdit) 
    { 
     await Html.RenderPartialAsync("EditorScriptsPartial"); 
    } 
} 
+1

ओह वाह आप पूरी तरह से ठीक कह रहे हैं - कि मेरी मूर्खतापूर्ण गलती थी। मैं इंटेलिसेंस में "@ सेक्शन" पॉपिंग नहीं देख रहा था और इसके बजाय मुझे अलग-अलग अनुभाग कार्यों को देख रहा था जो मुझे फेंक दिया। बहुत बहुत धन्यवाद, जो। जब मैं सक्षम हूं तो मैं इसे उत्तर के रूप में चिह्नित करूंगा। – Daath

+0

इसके अलावा, मेरे पास एक और त्वरित प्रश्न है - शायद आप मदद कर सकते हैं। _Layout में, क्या इससे कोई फर्क पड़ता है कि पर्यावरण (विकास, स्टेजिंग इत्यादि) मैंने अपनी स्क्रिप्ट डाली? – Daath

+0

आम तौर पर विकास में आप असीमित स्क्रिप्ट जोड़ देंगे जबकि उत्पादन में आप स्क्रिप्ट और/या स्क्रिप्ट को कम कर देंगे जो आप एक साथ बंडल करते हैं। तो हां यह महत्वपूर्ण है यदि आप उन्हें लपेटने के लिए पर्यावरण टैग का उपयोग करते हैं लेकिन यह वैकल्पिक है कि आप पर्यावरण में स्क्रिप्ट लपेटें या नहीं। –

संबंधित मुद्दे