2014-02-01 6 views
4

В настоящее время я использую встроенные BundleConfigs, которые отлично работают локально и развернуты, но я бы хотел переместить все свои статические активы в CDN. Я знаю, что синтаксис пакета позволяет вам указать путь CDN, который будет работать, но у кого-то есть хорошее решение, позволяющее синхронизировать BundleConfigs с вашими сценариями развертывания, что в конечном итоге будет обрабатывать concat/minify/copy вашей статистики CDN?ASP.NET с использованием пакетов MS и Grunt с CDN

В настоящее время я изучаю Grunt, чтобы concat/minify мои стили/скрипты, но это заставит меня управлять всеми моими пакетами в BundleConfig.cs моего решения, а затем снова в моем Gruntfile.js. Не идеально ...

Мысли или предложения? Благодаря!

+0

Если вы собираетесь использовать Grunt для комплектации и минимизации, то я не думаю, что вам нужно использовать инфраструктуру веб-оптимизации ASP.NET. Зачем использовать оба? –

ответ

9

Если вы собираетесь использовать Grunt для объединения и минимизации, то я не думаю, что вам нужно использовать инфраструктуру веб-оптимизации ASP.NET. Зачем использовать оба? Просто вставьте ссылки на свои связанные файлы app.css и app.js на своей странице, и все будет готово. Вы также можете использовать операторы @if ... для включения различных версий ваших файлов (разработка и производство).

Кроме того, обратите внимание на Gulp.js - более новую альтернативу Грунта, и этот шаблон проекта, который уже имеет некоторую базовую конфигурацию Gulp.js на месте: ASP.NET Solution Template

Несколько плагинов Gulp.js, которые могут помочь с CDN:

  • gulp-s3 - Загружает статические файлы на Amazon S3 во время сборки
  • gulp-google-cdn - Заменяет ссылки на 3-й библиотек партии с Gogole CDN связывает

После Gulp.js конфигурируется с помощью gulpfile.js файла, вы можете запустить:

gulp build --production 

. Для того, чтобы построить свой HTML/МЕНЬШЕ/JS файлы и публиковать их на Amazon S3 или какой-либо другой CDN.

+0

Я искал способ по-прежнему использовать Структуру веб-оптимизации для того, чтобы кэшировать каждый из пакетов даже при развертывании в CDN. Я согласен с тем, что я должен справиться со всеми связями и минимизацией через хрюканье - поэтому я пошел с гибридным решением этих двух. Удержал кэширование при использовании CDN на основе этого решения здесь: http://stackoverflow.com/questions/14838442/prepend-cdn-url-to-mvc-4-bundler-output/17054853#17054853 Спасибо! – bmherold

Смежные вопросы