NoTransform не работает при попытке создать новый пакет

Я следую примеру и не могу получить & quot; NoTransform & quot; работать при создании пользовательского комплекта для проекта MVC. Вот мой код, который не будет компилироваться из-за "NoTransform" приводя к ошибке, которая гласит: «Ошибка 1 Имя типа или пространства имен» NoTransform ». не найден (отсутствует директива using или ссылка на сборку?) & quot ;. Какие-нибудь мысли?

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using System.Linq;
using System.Web;
using System.Web.Http;
using System.Web.WebPages;
using System.Web.Mvc;
using System.Web.Optimization;
using System.Web.Routing;

namespace CoyleAzure
{


    public class MvcApplication : System.Web.HttpApplication
    {
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();

            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);


            // Added to Add DisplayModes


            DisplayModeProvider.Instance.Modes.Insert(0, new DefaultDisplayMode("Phone")
            {
                ContextCondition = (context => (
                (context.GetOverriddenUserAgent() != null) &&
                (
                (context.GetOverriddenUserAgent().IndexOf("iPhone", StringComparison.OrdinalIgnoreCase) >= 0) ||
                (context.GetOverriddenUserAgent().IndexOf("iPod", StringComparison.OrdinalIgnoreCase) >= 0) ||
                    (context.GetOverriddenUserAgent().IndexOf("Droid", StringComparison.OrdinalIgnoreCase) >= 0) ||
                        (context.GetOverriddenUserAgent().IndexOf("Blackberry", StringComparison.OrdinalIgnoreCase) >= 0) ||
                            (context.GetOverriddenUserAgent().StartsWith("Blackberry", StringComparison.OrdinalIgnoreCase))
            )
            ))
            });






            DisplayModeProvider.Instance.Modes.Insert(0, new DefaultDisplayMode("Tablet")
            {
                ContextCondition = (context => (
                    (context.GetOverriddenUserAgent() != null) &&
                    (
                    (context.GetOverriddenUserAgent().IndexOf("iPad", StringComparison.OrdinalIgnoreCase) >= 0) ||
                    (context.GetOverriddenUserAgent().IndexOf("Playbook", StringComparison.OrdinalIgnoreCase) >= 0) ||
                        (context.GetOverriddenUserAgent().IndexOf("Transformer", StringComparison.OrdinalIgnoreCase) >= 0) ||
                            (context.GetOverriddenUserAgent().IndexOf("Xoom", StringComparison.OrdinalIgnoreCase) >= 0)
                        )
                        ))
            });







            IBundleTransform jsTransformer;
            IBundleTransform cssTransformer;

#if DEBUG
            jsTransformer = new NoTransform("text/javascript");
            cssTransformer = new NoTransform("text/css");


#else   
            jsTransformer = new JsMinify();   
            cssTransformer = new CssMinify(); 
#endif

            var
            DesktopJSBundle = new Bundle("~/Scripts/DesktopJS", jsTransformer);

            DesktopJSBundle.Include("~/Scripts/jquery-1.6.4. js");
            DesktopJSBundle.Include("~/Scripts/jquery-ui-1.8.11. js");
            DesktopJSBundle.Include("~/Scripts/jquery.unobtrusive-ajax.js");
            DesktopJSBundle.Include("~/Scripts/jquery.validate.js");
            DesktopJSBundle.Include("~/Scripts/jquery.validate.unobtrusive.js");

            BundleTable.Bundles.Add(DesktopJSBundle);

            var DesktopCSSBundle = new Bundle("~/Content/DesktopCSS", cssTransformer);
            DesktopCSSBundle.Include("~/Content/Site.css");
            BundleTable.Bundles.Add(DesktopCSSBundle);



            var MobileJSBundle = new Bundle("~/Scripts/MobileJS", jsTransformer);
            MobileJSBundle.Include("~/Scripts/jquery-1.6.4.js");
            MobileJSBundle.Include("~/Scripts/jquery.mobile-1.1.0.js");
            BundleTable.Bundles.Add(MobileJSBundle);

            var MobileCSSBundle = new Bundle("~/Content/MobileCSS", cssTransformer);
            MobileCSSBundle.Include("~/Content/jquery.mobile-1.1.0.css");
            MobileCSSBundle.Include("~/Content/jquery.mobile.structure-1.1.0.css");
            BundleTable.Bundles.Add(MobileCSSBundle);
            //BundleTable.Bundles.RegisterTemplateBundles(); 
            BundleTable.Bundles.EnableDefaultBundles();
        }




        //BundleConfig.RegisterBundles(BundleTable.Bundles);




    }
}
 VJAI13 июн. 2012 г., 04:41
какую версию asp.net mvc вы используете?

Ответы на вопрос(4)

не прямой ответ на это, но просто чтобы указать на это любому, кто сталкивается с этим в дальнейшем ... это может быть сделано через config, (см.https://stackoverflow.com/a/12605451/6486)

<system.web>
    <compilation debug="true" />
    <!-- Lines removed for clarity. -->
</system.web>
 21 янв. 2013 г., 17:19
Это работает для меня.

точнее, System.Web.Optimization beta1), но вы, вероятно, пытаетесь скомпилировать его с MVC 4 RC (или, точнее, System.Web.Optimization beta2) (если MVC 4 вообще). В MVC 4 RCNoTransform являетсяinternal.

 19 июн. 2012 г., 18:24
Я не могу понять, почему они сделали NoTransform внутренним. Это было бы очень полезно для автоматического обнаружения релиза / отладки.

NoTransform и другие методы, такие какScripts, Styles.. являются новыми функциями объединения и минификации, которые доступны в версиях MVC 4 beta и MVC 4 RC. Я надеюсь, что вы не используете правильную версию ASP.NET MVC и, следовательно, вы получаете ошибки компиляции.

http://blog.kurtschindler.net/post/disabling-bundling-and-minification-in-aspnet-45mvc-4

 08 янв. 2014 г., 04:40
blog.kurtschindler.net/… Это новый URL для блога

NoTransform класс больше не должен быть публичным, потому что начиная с RC, нольTransform класс наBundle неявно означаетNoTransform.

До:

new Bundle("~/yourbundle", new NoTransform())

Сейчас:

new Bundle("~/yourbundle")

Мы чувствовали, что это было чище, чтобы не требовать фиктивного экземпляра. Мы сохранили его внутри, потому что в нем есть небольшая логика, которая потенциально может вызвать некоторые проблемы, поскольку Transform отвечает за установку contentType для ответа. Логика по умолчанию использует расширение первого файла в вашем пакете (.js / .css).

Также с добавлением помощников Script / Styles Render вам больше не нужно динамически переключаться между различными преобразованиями на основе debug = true | false. Помощники должны позаботиться об этом за вас.

 05 сент. 2012 г., 16:01
Я думал, что у меня была последняя версия, но я использовал Microsoft.Web.Optimization. Спасибо за разъяснения
 30 авг. 2012 г., 19:22
У вас есть последняя версия?nuget.org/packages/Microsoft.AspNet.Web.Optimization
 30 авг. 2012 г., 16:50
Кажется, я не могу вызвать новый Bundle () только с одним параметром. Есть ли новое решение для этого?

Ваш ответ на вопрос