我使用MVC4 StyleBundle
捆綁了一堆CSS。有一個CSS只需要IE 9或更低版本。如何根據瀏覽器版本捆綁特定的CSS?
在我BundleConfig
類RegisterBundles
方法,我有:
if (HttpContext.Current.Request.Browser.Browser.Trim().ToUpperInvariant().Equals("IE") && HttpContext.Current.Request.Browser.MajorVersion <= 9)
cssBundle.Include("~/Content/ie.css");
但後來我得到了Request is not available in this context
錯誤。 RegisterBundles
方法期間無法檢測瀏覽器嗎?
您是否在Global.asax中創建了這些包?那是什麼會導致這個錯誤。我不認爲Bundles支持基於請求的捆綁包,而是支持全局捆綁。 – Tejs
@Tejs,它在'Application_Start'處被調用。 –
是的,我不相信該框架提供了基於變體的包;這是一個全球性的或沒有的。如果你想爲每個瀏覽器創建不同的bundle,你需要製作所有獨立的bundle,然後在每個視圖中寫入你想要的bundle的引用。 – Tejs