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.

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));

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
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.