Agregar un directorio ya existente a un directorio en el Explorador de soluciones

105

Quiero agregar un directorio ya existente a un directorio en el Explorador de soluciones, pero cada vez que hago clic con el botón derecho en el directorio y selecciono Add => Existing Item, solo puedo agregar archivos individuales, pero no directorios.

¿Cómo agrego un directorio ya existente a un directorio dentro de un proyecto dentro del Explorador de soluciones?

JMK
fuente
¿Intentó hacer clic en Agregar carpeta y nombrarla como su directorio en el disco?
rene
9
¿Intentó arrastrar y soltar la carpeta desde el Explorador de Windows en la ventana de la solución de Visual Studio? Fuente: stackoverflow.com/questions/392473/…
Chris
¡Ahora tengo! Esto funciona de maravilla, gracias.
JMK
@Chris Realmente deberías publicar esto como una respuesta, porque ... eh ... es jaja
JMK
@Johnny_D Sin embargo, la respuesta con 7 votos fue más útil.
JMK

Respuestas:

82

Arrastre y suelte la carpeta del Explorador de Windows en la ventana de la solución de Visual Studio :)

Fuente aquí

o simplemente copie y pegue en el explorador de soluciones.

Chris
fuente
arrastrar y soltar pierde la estructura de la carpeta (VS12 Express)
Opsenas
1
@Chris: No es necesario arrastrar y soltar desde el explorador al explorador de soluciones. ¿De qué estás hablando?
ajeh
@ajeh Si tiene una ventana del explorador abierta junto a Visual Studio, seleccione un archivo del Explorador y luego arrástrelo y suéltelo en la ventana del Explorador de soluciones de Visual Studio
Chris
177

Haga clic en el botón 'Mostrar todos los archivos' en la parte superior del Explorador de soluciones y haga clic con el botón derecho en la carpeta deseada y seleccione 'incluir en el proyecto'.

Botón Mostrar todos los archivos en el Explorador de soluciones VS2012

Radenko Zec
fuente
1
No encuentro este botón. ¿Es esto porque solo tengo la edición Express?
Marcel
2
Hasta donde yo sé, el botón "mostrar todos los archivos" ya no existe en VS 2012. Por favor, corríjame si me equivoco, sin embargo, ya que extraño esta funcionalidad. EDITAR: Al menos, no existe para proyectos de sitios web.
Klay
1
Hola Klay. Como puedo ver, el botón "mostrar todos los archivos" existe en VS2012, sin embargo, no existe en el proyecto del sitio web. Mi recomendación para usted es: intente no utilizar el proyecto del sitio web si necesita esta funcionalidad
Radenko Zec
2
Sé que esto es un poco tarde, pero si su directorio (carpeta) ya está en su lugar en el sistema de archivos y desea agregarlo a su proyecto (ya que esto se indica de manera más simple en los comentarios anteriores) ... simplemente abra el archivo explorador (como normal ... carpeta abierta en Windows) y arrastre la carpeta y suéltela en la carpeta deseada en el panel del explorador de soluciones ... ¡trabajo hecho! Acabo de hacer esto y funciona, ya que tampoco tengo el "mostrar todos los archivos" y todavía deseo usar el "proyecto del sitio web" para mi proyecto.
rhaag71
16
Para aquellos que tienen problemas para encontrar el botón, tenga en cuenta que los botones en la parte superior del Explorador de soluciones cambian según lo que esté seleccionado (al menos en VS2012). Asegúrate de tener tu proyecto seleccionado.
Jon-Eric
10

VS 2012 parece distinguir entre 'Carpetas de solución', que son solo carpetas que contienen otras carpetas de solución o que contienen carpetas de proyectos. La función de arrastrar y soltar funciona (con mi configuración) solo para las carpetas del proyecto y no para las carpetas de la solución. Si agrego una nueva carpeta de solución, no ocurre nada en la máquina. Si arrastro y suelto una carpeta de la máquina en la Solución principal, se niega a aceptarla. Si arrastro y suelto la carpeta en una carpeta de soluciones, aparece un mensaje de error que indica que no se puede hacer.

Anthony Biagioli
fuente
4

A algunas otras respuestas les falta un punto importante: si la carpeta no está en un proyecto en la solución, es imposible agregar la carpeta

Esta es la solucion:

1) Agregue una nueva carpeta al sln; no le importa que la carpeta ya exista en el disco porque es una carpeta virtual en el sln

2) Agregue el archivo a la carpeta usando "agregar archivos existentes"

Almirante
fuente
Tengo una sugerencia para ti: evita que tu respuesta suene como un comentario. Su respuesta original tenía la frase "Solo tenía que agregar un comentario ...", lo que para mí sugiere que debería ser un comentario en lugar de una respuesta. Comenzar su respuesta con una línea como esta puede marcarla como "No es una respuesta". Me parece que su respuesta realmente intenta responder a la pregunta, así que la he editado para evitar las banderas NAA.
skrrgwasme
respondió la pregunta, sin embargo, como he estado desarrollando durante 35 años, mi inglés resulta ser franco y hasta el punto, además de esto, el código nunca se siente herido cuando no entiende, simplemente no funciona
Almirante
2

Cuando se trata de una carpeta de nivel de solución que se ha eliminado por algún motivo y ahora debe volver a agregarse, abra el archivo .sln en un editor de texto como notepad ++.

Busque su "Nombre de carpeta" en la sección que se ve así ...

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

Elimine de "Proyecto" a "EndProject" SOLAMENTE para el proyecto / carpeta específico con el que tiene problemas.

Es posible que reciba un mensaje en VS2012 que indique que su solución ha sido modificada por una fuente externa. Elija la opción "Descartar" sus cambios para los cambios externos. Por último, agregue su carpeta de nivel de solución y agregue su (s) proyecto (s) a esa carpeta como elementos existentes, arrástrelos / suéltelos o cópielos y péguelos, según sus preferencias.

Jabare Mitchell
fuente
Recibí un voto negativo, pero las respuestas anteriores, algunas de las cuales con votos positivos, explican que muchas de las soluciones, particularmente la que tiene la marca de verificación como respuesta, no ayudarán a alguien que recibe el mensaje "La carpeta ya existe" cuando intenta agregue una carpeta de solución. Tuve que encontrar la solución a ese mismo problema y la
publiqué
1

Expanda el elemento "Proyecto" en la barra de menú y seleccione "Mostrar todos los archivos". Luego, ubique la carpeta que desea agregar en el Explorador de soluciones (las carpetas que no están incluidas actualmente serán de color gris claro con un contorno punteado en lugar del ícono sólido habitual) haga clic con el botón derecho en la carpeta deseada y seleccione "Incluir en el proyecto"

Una vez que haya terminado, seleccione "Mostrar todos los archivos" en el menú Proyecto nuevamente para volver a la vista normal.

(Esto es muy similar a la respuesta de Radenko Zec, pero no requiere que el botón "Mostrar todos los archivos" ya esté presente en una barra de herramientas. Dejaría esto como respuesta a su respuesta, pero actualmente no tengo la reputación dejar comentarios.)

Daetrin
fuente
Creo que es posible que haya hojeado la publicación original, porque proporcionó una respuesta. Sin embargo, he editado la publicación para que la respuesta sea más clara. No estoy seguro de por qué me está informando de la necesidad de tener una mayor reputación para comentar publicaciones, ya que lo dije explícitamente en la respuesta, como parte del comentario, explicando que estaba dejando una respuesta complementaria como una nueva publicación. en lugar de un comentario debido a ese límite de reputación. ¡Pero gracias por tus comentarios!
Daetrin
Ese texto se publica automáticamente cada vez que se marca una respuesta como no tal. Aparte de eso, la edición lo deja más claro.
Davidmh
1

Para aquellos que tenían una corazonada, se podría hacer pero no pudieron hacerlo, NOTA: Arrastre la carpeta o los archivos al nombre del nombre del proyecto en el Explorador de soluciones como mínimo

NORDESTE
fuente