Adicione um diretório já existente a um diretório no Solution Explorer

105

Quero adicionar um diretório já existente a um diretório no Solution Explorer, mas sempre que clico com o botão direito do mouse no diretório e seleciono Add => Existing Item, só posso adicionar arquivos individuais, mas não diretórios.

Como adiciono um diretório já existente a um diretório dentro de um projeto dentro do Solution Explorer?

JMK
fonte
Você tentou clicar em Adicionar pasta e nomeá-la como seu diretório no disco?
rene
9
Tentou arrastar e soltar a pasta do Windows Explorer na janela de solução do Visual Studio? Fonte: stackoverflow.com/questions/392473/…
Chris,
Eu tenho agora! Isso funciona muito bem, obrigado.
JMK
@Chris Você realmente deveria postar isso como uma resposta, porque ... er ... é haha
JMK
@Johnny_D A resposta com 7 votos foi mais útil.
JMK

Respostas:

82

Arraste e solte a pasta do Windows Explorer na janela de solução do Visual Studio :)

Fonte aqui

ou simplesmente copie e cole no explorador de soluções.

Chris
fonte
arrastar e soltar estrutura de pastas perdidas (VS12 Express)
Opsenas
1
@Chris: Não há arrastar e soltar do explorer para o Solution Explorer. Do que você está falando?
ajeh
@ajeh Se você tiver uma janela do explorer aberta ao lado do visual studio, selecione um arquivo do explorer e arraste e solte na janela do Solution Explorer do visual studio
Chris
177

Clique no botão 'Mostrar todos os arquivos' na parte superior do Solution Explorer e clique com o botão direito na pasta desejada e selecione 'incluir no projeto'.

Botão Mostrar todos os arquivos no VS2012 Solution Explorer

Radenko Zec
fonte
1
Não consigo encontrar este botão. É porque só tenho a edição Express?
Marcel
2
Pelo que eu posso dizer, o botão "mostrar todos os arquivos" não existe mais no VS 2012. POR FAVOR, corrija-me se eu estiver errado, pois sinto falta dessa funcionalidade. EDIT: Pelo menos, não existe para projetos de sites.
Klay
1
Oi Klay. Como posso ver, o botão "mostrar todos os arquivos" existe no VS2012, mas não existe no projeto do site. Minha recomendação para você é: Tente não usar o projeto de web site se precisar desta funcionalidade
Radenko Zec
2
Eu sei que é um pouco tarde, mas se o seu diretório (pasta) já está no local no sistema de arquivos e você deseja adicioná-lo ao seu projeto (como isso é afirmado de forma mais simples nos comentários acima) .. basta abrir o arquivo explorer (como normal .. pasta aberta no Windows) e arraste a pasta e solte-a na pasta desejada em seu painel do explorador de soluções .. trabalho concluído! Acabei de fazer isso e funciona, pois não tenho a opção 'mostrar todos os arquivos' e ainda desejo usar o 'Projeto de site da Web' para o meu projeto.
rhaag71
16
Para aqueles que estão tendo problemas para encontrar o botão, observe que os botões na parte superior do Solution Explorer mudam dependendo do que está selecionado (no VS2012 pelo menos). Certifique-se de ter seu projeto selecionado.
Jon-Eric
10

O VS 2012 parece distinguir entre 'Pastas de Solução', que são apenas pastas contendo outras pastas de solução ou contendo pastas de projeto. O arrastar e soltar funciona (com minhas configurações) apenas para as pastas de projeto e não para as pastas de solução. Se eu adicionar uma nova pasta de solução, nada acontecerá na máquina. Se eu arrastar e soltar uma pasta da máquina para a Solução principal, ela se recusará a aceitá-la. Se eu arrastar e soltar a pasta em uma pasta de soluções, recebo uma mensagem de erro informando que isso não pode ser feito.

Anthony Biagioli
fonte
4

Algumas outras respostas estão faltando um ponto importante: se a pasta não está em um projeto na solução é impossível adicionar a pasta

Esta é a solução:

1) Adicionar uma nova pasta ao sln - não importa se a pasta já existe no disco porque esta é uma pasta virtual no sln

2) Adicione o arquivo à pasta usando "adicionar arquivos existentes"

Almirante
fonte
Tenho uma sugestão para você: evite fazer sua resposta soar como um comentário. Sua resposta original continha a frase "Só preciso adicionar um comentário ...", o que, para mim, sugere que deveria ser um comentário em vez de uma resposta. Começar sua resposta com uma linha como esta pode fazer com que seja sinalizada como "Não é uma resposta". Parece-me que sua resposta é realmente uma tentativa de responder à pergunta, então eu editei para evitar sinalizadores de NAA.
skrrgwasme
respondeu à pergunta, no entanto, como venho desenvolvendo há 35 anos, meu inglês é direto e direto ao ponto. Além disso, o código nunca se magoa quando não entende, simplesmente não funciona
Almirante
2

Ao lidar com uma pasta de nível de solução que foi removida por algum motivo e agora precisa ser adicionada novamente, abra o arquivo .sln em um editor de texto como o notepad ++.

Encontre o seu "FolderName" na seção que se parece com isto ...

Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NewFolder1", "NewFolder1", "{73ED84FC-F250-4CCC-B267-34CEB67F2883}" EndProject

Exclua de "Projeto" para "Projeto final" SOMENTE para o projeto / pasta específico com o qual você está tendo problemas.

Você pode receber uma mensagem no VS2012 informando que sua solução foi modificada por uma fonte externa. Escolha a opção "Descartar" suas alterações para as alterações externas. Por último, adicione sua pasta de nível de solução e adicione seu (s) projeto (s) a essa pasta como itens existentes, arraste / solte-os ou copie e cole-os, de acordo com sua preferência.

Jabare Mitchell
fonte
Recebi um voto negativo, mas respostas anteriores, algumas das quais com votos positivos, explicam que muitas das soluções, especialmente aquela com a marca de seleção como resposta, não ajudarão alguém que está recebendo a mensagem "a pasta já existe" ao tentar adicione uma pasta de solução. Eu mesmo tive que encontrar a solução para esse problema e a postei aqui para ajudar mais alguém ...
Jabare Mitchell
1

Expanda o item "Projeto" na barra de menu e selecione "Mostrar todos os arquivos". Em seguida, localize a pasta que deseja adicionar no Solution Explorer (as pastas que não estão incluídas atualmente serão cinza claro com um contorno pontilhado em vez do ícone sólido usual) clique com o botão direito na pasta desejada e selecione "Incluir no projeto"

Quando terminar, selecione "Mostrar todos os arquivos" no menu Projeto novamente para retornar à visualização normal.

(Isso é muito semelhante à resposta de Radenko Zec, mas não exige que o botão "Mostrar todos os arquivos" já esteja presente em uma barra de ferramentas. Eu apenas deixaria isso como uma resposta à sua resposta, mas atualmente não tenho a reputação para deixar comentários.)

Daetrin
fonte
Eu acredito que você pode ter acabado de ler a postagem original, porque ela forneceu uma resposta. No entanto, editei a postagem para deixar essa resposta mais clara. Não sei por que você está me informando da necessidade de ter uma reputação mais elevada para comentar as postagens, já que declarei explicitamente isso na resposta, como parte do comentário explicando que estava deixando uma resposta complementar como uma nova postagem em vez de um comentário devido a esse limite de reputação. Mas obrigado pelo seu feedback!
Daetrin
Esse texto é postado automaticamente sempre que uma resposta é sinalizada como não sendo assim. Além disso, a edição deixa tudo mais claro.
Davidmh
1

Para aqueles que tiveram um palpite de que isso poderia ser feito, mas não foram capazes de fazê-lo, NOTA: Arraste a pasta ou arquivos PARA O nome do projeto no Solution Explorer, no mínimo

N_E
fonte