Includere tutti i file in una cartella in un unico pacchetto


110

Quando si utilizza BundleConfigè possibile includere tutti i file di una cartella compresi tutti i file delle cartelle figlio (e le loro cartelle figlio ecc.)?

Ho trovato .IncludeDirectory()ma sembra includere solo i file della cartella stessa, non i file delle sottocartelle.

Risposte:


222

Usa l'overload del metodo IncludeDirectory che accetta bool searchSubdirectoriescome terzo parametro.

MSDN:

searchSubdirectories: specifica se eseguire la ricerca ricorsiva nelle sottodirectory di directoryVirtualPath.

Esempio:

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

2
possiamo ordinare i file nella directory come fatto qui ?
shaijut

2
questo non include i .minfile, c'è una soluzione? , perché ho .mine .jsfile nella cartella
shaijut

1
I file @stom e min sono solitamente inclusi dai bundle nella modalità di rilascio.
Zabavsky

Sì, hai ragione come menzionato qui , ho cambiato il web.configin <compilation debug="false"> e in BundleConfig.csaggiunta BundleTable.EnableOptimizations = true;grazie.
shaijut

4
@Zabavsky, C'è un bug nella versione 1.1 di Web.Optimization in cui la tua risposta non funziona, ma l'aggiornamento all'ultima versione o il downgrade a 1.0 lo risolveranno. Potrei aggiungerlo alla tua risposta per risparmiare tempo alle persone. stackoverflow.com/questions/22612157/…
Michael,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.