Incluir todos los archivos de una carpeta en un solo paquete

110

Cuando se usa, ¿ BundleConfiges posible incluir todos los archivos de una carpeta, incluidos todos los archivos de las carpetas secundarias (y sus carpetas secundarias, etc.)?

Encontré, .IncludeDirectory()pero parece que solo incluye los archivos de la carpeta en sí, no los archivos de las subcarpetas.

Jordan hacha
fuente

Respuestas:

222

Utilice la sobrecarga del método IncludeDirectory que acepta bool searchSubdirectoriescomo tercer parámetro.

MSDN:

searchSubdirectories: especifica si buscar de forma recursiva los subdirectorios de directoryVirtualPath.

Ejemplo:

bundles.Add(new ScriptBundle("~/bundles/scripts")
    .IncludeDirectory("~/Scripts", "*.js", true));
Zabavsky
fuente
2
¿Podemos ordenar los archivos en el directorio como se hace aquí ?
shaijut
2
esto no incluye .minarchivos, ¿hay alguna solución? , porque tengo archivos .miny .jsen la carpeta
shaijut
1
@stom, los archivos min generalmente se incluyen en los paquetes en el modo de lanzamiento.
Zabavsky
Si usted está correcta como se ha mencionado aquí , he cambiado el web.configque <compilation debug="false"> ya BundleConfig.csañadido BundleTable.EnableOptimizations = true;gracias.
shaijut
4
@Zabavsky, Hay un error en Web.Optimization versión 1.1 en el que su respuesta no funciona, pero la actualización a la última versión o la degradación a 1.0 lo solucionará. Es posible que desee agregar eso a su respuesta para ahorrar tiempo a las personas. stackoverflow.com/questions/22612157/…
Michael