Incluir todos os arquivos em uma pasta em um único pacote


110

Ao usar, BundleConfigé possível incluir todos os arquivos de uma pasta incluindo todos os arquivos das pastas filhas (e suas pastas filhas, etc.)?

Achei, .IncludeDirectory()mas parece incluir apenas os arquivos da própria pasta, não os arquivos das subpastas.

Respostas:


222

Use a sobrecarga do método IncludeDirectory que aceita bool searchSubdirectoriescomo terceiro parâmetro.

MSDN:

searchSubdirectories - Especifica se os subdiretórios de directoryVirtualPath devem ser pesquisados ​​recursivamente.

Exemplo:

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

2
podemos ordenar os arquivos no diretório como feito aqui ?
shaijut de

2
não inclui .minarquivos, tem solução? , Porque eu tenho .mine .jsarquivos na pasta
shaijut

1
Os arquivos @stom, min são geralmente incluídos pelos pacotes no modo de lançamento.
Zabavsky

sim, você está correto, conforme mencionado aqui , eu mudei o web.configpara <compilation debug="false"> e, em BundleConfig.csseguida, BundleTable.EnableOptimizations = true;agradeço.
shaijut de

4
@Zabavsky, há um bug no Web.Optimization versão 1.1 em que sua resposta não funciona, mas atualizar para a versão mais recente ou fazer o downgrade para 1.0 irá consertá-lo. Talvez você queira adicionar isso à sua resposta para economizar algum tempo das pessoas. stackoverflow.com/questions/22612157/…
Michael
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.