StyleBundle索引超出了数组的范围
我想包括像这样的目录中的所有文件:
bundles.Add(new StyleBundle("~/Content/simpliq_css").Include( "~/Content/simpliq/*.css" ));
但是我得到这个错误Index was outside the bounds of the array
红线是:
@Styles.Render("~/Content/simpliq_css")
[IndexOutOfRangeException: Index was outside the bounds of the array.] System.String.get_Chars(Int32 index) +0 Microsoft.Ajax.Utilities.CssParser.Append(Object obj, TokenType tokenType) +402 Microsoft.Ajax.Utilities.CssParser.AppendCurrent() +74 Microsoft.Ajax.Utilities.CssParser.ParseElementName() +321 Microsoft.Ajax.Utilities.CssParser.ParseSimpleSelector() +54 Microsoft.Ajax.Utilities.CssParser.ParseSelector() +555 Microsoft.Ajax.Utilities.CssParser.ParseRule() +165 Microsoft.Ajax.Utilities.CssParser.ParseStylesheet() +186 Microsoft.Ajax.Utilities.CssParser.Parse(String source) +946 Microsoft.Ajax.Utilities.Minifier.MinifyStyleSheet(String source, CssSettings settings, CodeSettings scriptSettings) +439 Microsoft.Ajax.Utilities.Minifier.MinifyStyleSheet(String source, CssSettings settings) +73 System.Web.Optimization.CssMinify.Process(BundleContext context, BundleResponse response) +302 System.Web.Optimization.Bundle.ApplyTransforms(BundleContext context, String bundleContent, IEnumerable`1 bundleFiles) +207 System.Web.Optimization.Bundle.GenerateBundleResponse(BundleContext context) +355 System.Web.Optimization.Bundle.GetBundleResponse(BundleContext context) +104 System.Web.Optimization.BundleResolver.GetBundleContents(String virtualPath) +254 System.Web.Optimization.AssetManager.EliminateDuplicatesAndResolveUrls(IEnumerable`1 refs) +435 System.Web.Optimization.AssetManager.DeterminePathsToRender(IEnumerable`1 assets) +1030 System.Web.Optimization.AssetManager.RenderExplicit(String tagFormat, String[] paths) +75 System.Web.Optimization.Styles.RenderFormat(String tagFormat, String[] paths) +293 System.Web.Optimization.Styles.Render(String[] paths) +51 ASP._Page_Areas_Admin_Views_Shared__Layout_cshtml.Execute() in f:\MyProjects\Fables\Fables\Fables.Web\Areas\Admin\Views\Shared\_Layout.cshtml:8 System.Web.WebPages.WebPageBase.ExecutePageHierarchy() +271 System.Web.Mvc.WebViewPage.ExecutePageHierarchy() +120 System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage) +145 System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer) +41 System.Web.WebPages.<>c__DisplayClass7.<RenderPageCore>b__6(TextWriter writer) +335 System.Web.WebPages.HelperResult.WriteTo(TextWriter writer) +42 System.Web.WebPages.WebPageExecutingBase.WriteTo(TextWriter writer, HelperResult content) +45 System.Web.WebPages.WebPageBase.Write(HelperResult result) +53 System.Web.WebPages.WebPageBase.RenderSurrounding(String partialViewName, Action`1 body) +178 System.Web.WebPages.WebPageBase.PopContext() +347 System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage) +154 System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) +695 System.Web.Mvc.BuildManagerCompiledView.Render(ViewContext viewContext, TextWriter writer) +382 System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) +431 System.Web.Mvc.ControllerActionInvoker.InvokeActionResult(ControllerContext controllerContext, ActionResult actionResult) +39 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +116 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +529 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) +106 System.Web.Mvc.Async.<>c__DisplayClass28.<BeginInvokeAction>b__19() +321 System.Web.Mvc.Async.<>c__DisplayClass1e.<BeginInvokeAction>b__1b(IAsyncResult asyncResult) +185 System.Web.Mvc.Async.WrappedAsyncResult`1.CallEndDelegate(IAsyncResult asyncResult) +42 System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +133 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +56 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) +40 System.Web.Mvc.Controller.<BeginExecuteCore>b__1d(IAsyncResult asyncResult, ExecuteCoreState innerState) +34 System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +70 System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +139 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +59 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +40 System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +44 System.Web.Mvc.Controller.<BeginExecute>b__15(IAsyncResult asyncResult, Controller controller) +39 System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +62 System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +139 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +59 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +40 System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) +39 System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult) +39 System.Web.Mvc.MvcHandler.<BeginProcessRequest>b__4(IAsyncResult asyncResult, ProcessRequestState innerState) +39 System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +70 System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +139 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +59 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +40 System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +40 System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) +38 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +9514928 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155
问题出现在下一个软件包的版本中:
你必须更新它,问题将得到解决。
我有同样的问题,当我尝试不同的检查,我发现有一个select器在我的CSS文件,这样会导致问题:
.glyphicons-icon _: – o- prefocus,.glyphicons-icon {background-image:url(../ images / glyphicons.png); }
看来,Microsoft.Ajax.Utilities.CssParser与_: cssselect器有问题。 我删除了线,它的工作。
尝试将JavaScript文件添加到StyleBundle时,可能会出现相同的错误。
我有同样的错误。 我的ASP.NET Web优化框架已更新,但Bootstrap的版本是3.3.0。 我更新了Bootstrap到3.3.5,错误消失了。
请注意,这可能是由无效的JavaScript引起的。 在编写JavaScript时,我注意到我的包突然开始抛出这个消息。 堆栈跟踪显示它正在炸毁“Microsoft.Ajax.Utilities.JSScanner.ScanTemplateLiteral”。 事实certificate,我无意中在我的JavaScript中添加了一个`(反引号)。 删除它导致一切再次工作。 我正在运行Webgrease 1.6.0和Microsoft ASP.NET Web Optimization Framework 1.1.2。
当CSS有一个倒勾时,捆绑器不受影响。
在我的情况下,它只是一个额外的撇号“`”在js文件之一。 ASP.NET似乎对这个特殊的人物( Grave口音 )很敏感。 所以一定要检查你的代码是否有错别字。