Включіть усі файли в папку в одному пакеті


110

При використанні BundleConfigчи можна включати всі файли папки, включаючи всі файли дочірніх папок (та їх дочірніх програм тощо)?

Я знайшов, .IncludeDirectory()але, здається, включає лише файли самої папки, а не файли підпапок.

Відповіді:


222

Використовуйте перевантаження методу IncludeDirectory, який приймає bool searchSubdirectoriesяк третій параметр.

MSDN:

searchSubdidiaries - Вказує, чи потрібно рекурсивно шукати підкаталоги у каталозіVirtualPath.

Приклад:

bundles.Add(new ScriptBundle("~/bundles/scripts")
    .IncludeDirectory("~/Scripts", "*.js", true));

2
чи можемо ми замовити файли в каталозі, як це зроблено тут ?
shaijut

2
це не включає .minфайли, чи є рішення? , тому що у мене є .minі .jsфайли в папці
shaijut

1
@stom, min файли, як правило, включаються в пакети в режимі випуску.
Забавський

да ви правильно , як зазначено тут , я змінив web.configдо <compilation debug="false"> і BundleConfig.csдодав BundleTable.EnableOptimizations = true;спасибі.
shaijut

4
@Zabavsky. У Web.Optimization версії 1.1 є помилка, у якій ваша відповідь не працює, але оновлення до останньої версії або пониження до 1.0 виправить це. Ви можете додати це до своєї відповіді, щоб заощадити людей на деякий час. stackoverflow.com/questions/22612157/…
Михайло
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.