ASP.NET MVC 4 ScriptBundle возвращает пустой

В частности, я пытаюсь создать ScriptBundle в MVC 4 с уже свернутыми скриптами и вернуть этот же Bundle, находится ли проект в Debug или нет.

Мой веб-проект ссылается на пакет MVC Telerik Grid NuGet. В этом пакете Telerik предоставляет только мини файлы JS. Ниже приведен код объединения.

        // telerik scripts
        bundles.Add(new ScriptBundle("~/scripts/bundles/telerik").Include(
            "~/Scripts/2012.1.214/telerik.common.min.js",
            "~/Scripts/2012.1.214/telerik.textbox.min.js",
            "~/Scripts/2012.1.214/telerik.calendar.min.js",
            "~/Scripts/2012.1.214/telerik.datepicker.min.js",
            "~/Scripts/2012.1.214/telerik.grid.min.js",
            "~/Scripts/2012.1.214/telerik.grid.filtering.min.js"));

Другие ScriptBundles работают нормально, но когда мой проект пытается ссылаться на этот пакет, запрос появляется как: scripts/bundles/telerik?v= Возврат ничего.

Если я устанавливаю BundleTable.EnableOptimizations = true, то он возвращает ScriptBundle и ссылается на определенную версию, однако это решение неприемлемо.

Я не хочу принудительно устанавливать BundleTable.EnableOptimizations = true, так как я хочу, чтобы все другие Bundles возвращали неминифицированные версии, когда это необходимо.

У кого-то есть аналогичный опыт, и если да, то каково было решение?

Ответ 1

Я думаю, что у вас такая же проблема, посмотрите на эту ссылку: mvc4 bundler, не включая .min файлы

Переименуйте .min.js в .js или выполните что-то вроде:

    public static void AddDefaultIgnorePatterns(IgnoreList ignoreList)
    {
        if (ignoreList == null)
            throw new ArgumentNullException("ignoreList");

        ignoreList.Clear();

        ignoreList.Ignore("*.intellisense.js");
        ignoreList.Ignore("*-vsdoc.js");
        ignoreList.Ignore("*.debug.js", OptimizationMode.WhenEnabled);
        //ignoreList.Ignore("*.min.js", OptimizationMode.WhenDisabled);
        ignoreList.Ignore("*.min.css", OptimizationMode.WhenDisabled);
    }