2015-05-28 5 views
10

पृष्ठभूमि: मैं एक ASP.NETMVC 5 आवेदन (Ubuntu 14.4, Monodevelop, Mono में) Monodevelop करने के लिए परियोजना (Windows 8.1, VS2013 समुदाय, .NET 4.5.1, MySql कस्टम सदस्यता और भूमिका प्रदाता में विकसित) की ओर पलायन कर रहा हूँ।स्टाइलशीट और लिपियों मोनो में काम नहीं कर बंडलों

मेरी ~/App_Start/BundleConfig कक्षा में

public static void RegisterBundles(BundleCollection bundles) 
    { 
     BundleTable.EnableOptimizations = true; 

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

     bundles.Add(new ScriptBundle("~/bundles/modernizr").Include(
        "~/Scripts/modernizr-*")); 
    } 

मेरी ~/Views/Shared/_Layout.cshtml ध्यान में रखते हुए

@Styles.Render("~/Content/css") 
@Scripts.Render("~/bundles/modernizr") 

मेरी Web.Config

<add namespace="System.Web.Optimization" /> 

इसके अलावा

01 में

भी Microsoft.Web.Infrastructure.dll बिन निर्देशिका से हटा दिया गया है।

समस्या: मैं जब मैं ब्राउज़र में स्रोत देखने नहीं दिख रहा है कि बंडलों प्रदान कर रहे हैं:

लिंक निर्देशिका की ओर निर्देशन कर रहे हैं, यह निर्देशिकाओं में से फ़ाइलें दिखाना चाहिए

<link href="/Content/css" rel="stylesheet"/> 
<script src="/bundles/modernizr"></script> 

यह बंडलिंग विंडोज पर बहुत ठीक काम कर रहा है लेकिन Ubuntu पर, मैं सिर्फ निर्देशिका

देख मैं गलत यहाँ क्या कर रहा हूँ?

BundleTable.EnableOptimizations = true; 

तब मोड जारी करने के लिए स्विच:

+3

क्या आप डिबगिंग कर रहे हैं और ' 'या' BundleTable.EnableOptimizations = false; '? – rageit

+0

@rageit - मैं डिबगिंग कर रहा हूं और मेरी परियोजना में 'BundleTable.EnableOptimizations' देखने में सक्षम नहीं हूं। क्या यह web.config या BundleConfig में कुछ है? यदि हाँ, मैं इसका उपयोग कैसे कर सकता हूं? – xameeramir

+1

क्या आपके पास अपनी 'bin' निर्देशिका में' Microsoft.Web.Infrastructure.dll' है? यदि ऐसा है, तो इसे हटाने का प्रयास करें। मोनो का अपना कार्यान्वयन है यदि यह फ़ाइल गायब है तो इसका उपयोग होगा। –

उत्तर

6

अपने BundleConfig फ़ाइल के अंदर निम्नलिखित जोड़ें।

यह चाल

+0

खुश मैं मदद कर सकता हूं :) –

1

मैं सिर्फ अपने आप को आज इस मुद्दे में आए करना चाहिए। मिहाई-तिब्बरा का जवाब वास्तव में काम करता है, लेकिन यह मेरे उद्देश्यों के लिए अस्वीकार्य आवश्यकताओं की ओर जाता है।

तो हमेशा bundling को सक्षम करने (BundleTable.EnableOptimizations = true और/या रिलीज़ मोड में निर्माण) स्वीकार्य नहीं है पर विचार करें:

"~/Content/site.css" 
:

BundleConfig.cs में इस तरह की एक पंक्ति को खोजें

को

"~/Content/Site.css" 

ध्यान दें कि परिवर्तन है कि मोनो में, फ़ाइल नाम के मामले बहुत महत्वपूर्ण है, जबकि कि खिड़कियों में महत्वपूर्ण नहीं है। तो या तो आपके एचटीएमएल को लोअर-केस साइट.css का उपयोग करने की आवश्यकता है या आपके बंडल को पूंजी पत्र से शुरू करने की आवश्यकता है।

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