Pregunta

Mi solución actual para cambiar el nombre de la carpeta del proyecto es:

  • Eliminar el proyecto de la solución.
  • Cambie el nombre de la carpeta fuera de Visual Studio.
  • Vuelva a agregar el proyecto a la solución.

¿Hay alguna forma mejor?

¿Fue útil?

Solución

  

Usuarios de TFS: Si está utilizando un control de origen que requiere que lo advierta antes de cambiar el nombre de sus archivos / carpetas, mire esta respuesta en lugar de que cubre los pasos adicionales requeridos.


Para cambiar el nombre de la carpeta de un proyecto , archivo (. * proj ) y nombre para mostrar en Visual Studio:

  • Cierra la solución.
  • Cambie el nombre de las carpetas fuera de Visual Studio. (Renombrar en TFS si se usa el control de origen)
  • Abra la solución, ignorando las advertencias (responda " no " si se le pide que cargue un proyecto desde el control de código fuente).
  • Ir a través de todos los proyectos no disponibles y ...
    • Abra la ventana propiedades para el proyecto (resalte el proyecto y presione Alt + Enter o F4 , o haga clic con el botón derecho en > propiedades).
    • Establezca la propiedad ' Ruta del archivo ' en la nueva ubicación.
      • Si la propiedad no es editable (como en VS2012), abra el archivo .sln directamente en otro editor como Notepad ++ y actualice las rutas allí. (Es posible que deba revisar primero la solución en TFS, etc.)
    • Volver a cargar el proyecto: haga clic con el botón derecho en > recargar proyecto.
    • Cambie el nombre para mostrar del proyecto, resáltelo y presione F2 , o haga clic con el botón derecho > cambiar nombre .

Nota: Otras soluciones sugeridas que implican eliminar y luego volver a agregar el proyecto a la solución romperán las referencias del proyecto.

Si realiza estos pasos, también podría considerar cambiar el nombre de los siguientes para que coincidan:

  1. Asamblea
  2. Espacio de nombres predeterminado / raíz
  3. Espacio de nombres de los archivos existentes (use las herramientas de refactorización en Visual Studio o la herramienta de espacios de nombres inconsistentes de ReSharper)

También considere modificar los valores de los siguientes atributos del ensamblado :

  1. AssemblyProductAttribute
  2. AssemblyDescriptionAttribute
  3. AssemblyTitleAttribute

Otros consejos

Hay otra forma de hacerlo, utilizando los archivos * .sol, * csproj.

  1. abra su archivo de solución
  2. busque el * .csproj que desea cambiar
  3. será así (en relación con el archivo * .sol):

    Proyecto (" {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}) = " Shani.Commands.Impl " ;, " Shani.Commands.Impl \ Shani.Commands.Impl .csproj " ;, " {747CFA4B-FC83-419A-858E-5E2DE2B948EE} "

  4. y simplemente cambie la primera parte al nuevo directorio, por ejemplo:

    Impl\Shani.Commands.Impl\Shani.Commands.Impl.csproj

  5. por supuesto, no olvide mover todo el proyecto a ese directorio

Diviértete.

Esto es sencillo en VS 2015 (posiblemente funciona en versiones anteriores)

  1. En el Explorador de soluciones, haga clic con el botón derecho en Solución principal > Renombrar
  2. En el Explorador de soluciones, haga clic con el botón derecho en el proyecto (bajo solución) > Renombrar
  3. En el Explorador de soluciones, haga doble clic o haga clic con el botón derecho en Propiedades > , haga clic en la pestaña Aplicación, cambie el nombre de Nombre del conjunto y espacio de nombres predeterminado para que coincidan .
  4. Si desea cambiar también el nombre del espacio de nombres, abra uno de sus archivos de clase. Haga clic derecho en el espacio de nombres > Cambiar nombre ... esto debería buscar y reemplazar todas las referencias a su espacio de nombres a lo largo del proyecto.
  5. Cerrar el proyecto > cambie el nombre de la carpeta del proyecto .
  6. Edite el archivo .sln en el bloc de notas, cambie la ruta al cjproj. es decir, fu \ bar.csproj - > bar \ bar.csproj

Hombre, he luchado con esto. Desafortunadamente, no hay una solución de un solo clic en Visual Studio, pero si está ejecutando Visual Studio 2012 y su proyecto está bajo control de código fuente con Team Foundation Server , aquí está cómo lo hice funcionar, manteniendo el historial de origen:

(Asegúrate de leer el comentario de @ mjv a continuación, ya que señala que puedes saltar los pasos 5-10)

  1. Asegúrese de haber verificado todos los cambios, para que no tenga cambios pendientes.
  2. Elimine el proyecto de la solución, haciendo clic derecho y seleccionando Eliminar .
  3. Ahora, en el Explorador de Windows, cambie el nombre de la carpeta del proyecto.
  4. Vuelva a Visual Studio y, en el Explorador de soluciones, haga clic con el botón derecho en la solución y seleccione Agregar - > Proyecto existente . Seleccione el archivo de proyecto para el proyecto que eliminó en el paso 2, que debe ubicarse en la carpeta renombrada.
  5. Ahora el proyecto está de vuelta en la solución, pero el proyecto no parece haberse agregado al control de origen. Para solucionarlo, abra Source Control Explorer.
  6. Busque la carpeta del proyecto en Source Control Explorer, que corresponde con la carpeta del proyecto en su disco, que cambió de nombre en el paso 3.
  7. Cambie el nombre de la carpeta en Source Control Explorer para que tenga el mismo nombre que la carpeta del proyecto en el disco.
  8. Ahora eche un vistazo a sus cambios pendientes. Debería haber cambios en el archivo de solución y una operación de cambio de nombre en la carpeta del proyecto.
  9. Realice una reconstrucción y asegúrese de que todo se compila correctamente. Si tenía referencias entre proyectos al proyecto cuyo nombre cambió, debe agregarlos nuevamente a los proyectos individuales que lo referenciaron.
  10. Debes estar todo listo ahora. Ve y revisa todo.

La guía anterior funcionó para mí. Si no funciona para usted, intente eliminar su solución local por completo y elimine la asignación de carpetas en su espacio de trabajo. Reinicie Visual Studio por si acaso. Asegúrese de haber eliminado toda la solución de su computadora. Ahora lea la asignación de la solución en su espacio de trabajo y obtenga la última versión. Ahora prueba los pasos anteriores. Lo mismo se aplica si algo sale mal mientras se siguen los pasos anteriores. Simplemente elimine su solución localmente y obtenga la última fuente, y tendrá una lista limpia para trabajar.

Si aún tienes problemas, asegúrate de no haber cambiado nada manualmente en el archivo de la solución, o de probar otros 'trucos' antes de seguir los pasos anteriores. Si ha cambiado algo y lo ha registrado, es posible que desee considerar realizar una reversión al punto justo antes de comenzar a alterar el nombre del proyecto.

Por supuesto, también querrá cambiar el nombre del proyecto en sí, en el Explorador de soluciones. Puede hacerlo antes de los pasos anteriores, pero en ese caso, asegúrese de verificar ese cambio antes de aplicar los pasos anteriores. También puede hacerlo después, pero asegúrese de seguir primero todos los pasos anteriores y verifique sus cambios antes de intentar cambiar el nombre del proyecto en el Explorador de soluciones. No recomiendo tratar de mezclar los pasos anteriores con un cambio de nombre del nombre del proyecto en el Explorador de soluciones. Sin embargo, podría funcionar, pero recomendaría hacerlo en 2 conjuntos de cambios separados.

Actualmente, no. Bueno, en realidad puede hacer clic en el nodo del proyecto roto y en el panel de propiedades buscar la propiedad 'Ruta', luego hacer clic en el pequeño icono de navegación y seleccionar la nueva ruta.

Voila :)

La solución más simple es la siguiente:

  1. Haga clic con el botón derecho en el proyecto y cámbiele el nombre.
  2. (opcional) Abra la configuración de propiedades del proyecto y modifique el nombre del conjunto (y opcionalmente el espacio de nombres predeterminado) para usar el nuevo nombre del proyecto.
  3. (opcional) Seleccione el nombre del espacio de nombres en un archivo de origen, haga clic con el botón derecho y seleccione Refactor \ Rename para cambiar el nombre global del espacio de nombres al nuevo nombre del proyecto.
  4. (opcional) Abra el archivo AssemblyInfo.cs y cambie el nombre del ensamblaje para que coincida.
  5. Guarde y cierre la solución.
  6. Con el Explorador de Windows, cambie el nombre de la carpeta del proyecto al nuevo nombre.
  7. Abra el archivo SLN en un editor de texto, busque la única referencia a la ruta del proyecto y cámbiela para usar el nuevo nombre de carpeta.

Hay 4 pasos necesarios pero se recomiendan 7. Al final del día, aunque el proyecto se renombra por completo. Técnicamente, el nombre de la carpeta para el proyecto no tiene que coincidir con el proyecto en sí, por lo que incluso ese paso es opcional, pero puede ser confuso si no coinciden. Lo mismo para los nombres de ensamblaje y espacio de nombres.

En la respuesta de andersjanmyr es más fácil cambiar el nombre del proyecto primero.

  1. Cambiar nombre de proyecto.
  2. Cierre la solución (guárdela).
  3. Cambie el nombre de las carpetas fuera de Visual Studio.
  4. Abra la solución, ignorando las advertencias.
  5. Ir a través de todos los proyectos no disponibles y establecer la propiedad 'Ruta del archivo' en la nueva ubicación de su archivo de proyecto, es decir, someproject.csproj.
  6. Recargar el proyecto.

Además, después de llevar a cabo esos pasos, es posible que desee cambiar el nombre de otras referencias a su antiguo nombre de proyecto.

En las propiedades del proyecto, actualice el Nombre del ensamblaje y el Espacio de nombres predeterminado. Esto actualizará lo siguiente en el archivo del proyecto ...

<RootNamespace>SomeProjectName</RootNamespace>
<AssemblyName>SomeProjectName</AssemblyName>

... y se librará del error " El espacio de nombres no corresponde a la ubicación del archivo, debe ser: "SomeProjectName" "

Renombra el espacio de nombres de tu raíz (si tienes un resharper, haz clic derecho en el espacio de nombres y ve a Refactor - > Renombrar).

Cambie todas las ocurrencias de su antiguo nombre de proyecto en AssemblyInfo.cs

Para VS2017 puedes usar mi extensión de estudio visual

descarga

Cambiará el nombre del proyecto en:

  • carpeta de ubicación del proyecto
  • archivo de solución
  • referencia en otros proyectos
  • nombre del ensamblado, información
  • espacio de nombres predeterminado

Solo tenía que hacer esto yo mismo (usando VS2010). Como algunas personas han respondido, el paso más simple parece ser:

  1. Cierre el proyecto VS.
  2. Abra el archivo .sln y cambie el nombre del prefijo del directorio del proyecto para cada una de las ocurrencias .csproj.
  3. Guarde el archivo .sln
  4. Cambie el nombre del directorio de la carpeta del proyecto real en su disco duro para que coincida con sus cambios en el archivo .sln.
  5. Abra el archivo .sln (en VS) y reconstruya

Vea el artículo 3 en articulo vinculado

  1. Cierre la solución y el IDE.
  2. En Explorer: cambie el nombre del directorio al nuevo nombre.
  3. En Explorer: abra el archivo .sln con un editor de texto.
  4. Cambie el nombre del directorio al nuevo nombre y guárdelo.
  5. Reinicie el IDE y abra la solución desde el menú Archivo, Archivos recientes si no se inicia automáticamente.
  6. Haga clic en la carpeta Proyecto del Explorador de soluciones y verifique la propiedad de la ruta en las propiedades en la parte inferior. Ahora hará referencia a la nueva carpeta del proyecto.

Funcionó para mí.

Solución probada para la extensión de Visual Studio para herramientas de datos para Business Intelligence (SSDT-BI 2013):

  1. Mueva la carpeta Proyecto a su nueva ubicación (no cambie el nombre de nada todavía)
  2. En el Explorador de soluciones, cambie el nombre del Proyecto / Solución.
  3. Cierre (y guarde) el proyecto recientemente renombrado.
  4. Cambie el nombre de la carpeta del proyecto y el archivo .sln.
  5. Use un editor de texto y abra el archivo de solución de proyecto recientemente renombrado (.sln) (utilicé Notepad ++)
  6. En la línea número 6 verá: " Proyecto {fdjfksdjk4387! ...} = " OLDPROJECT " ;, " OLDFOLDER \ OLDPROJECT.rptproj " ;. Cambie el nombre de todo con los nombres nuevos utilizados en el paso 4. (es decir, ... = " NEWPROJECT " ;, " NEWFOLDER \ NEWPROJECT.rptproj " ...)
  7. ¡Eso es!

Probado al 100% y funcionó perfectamente en mi caso.

NOTA: No se puede confirmar si funciona con diferentes plantillas de proyecto a / o versiones de Visual Studio. Como siempre, haga una copia de seguridad de todo de antemano.

Para aquellos que usan Visual Studio + git y desean mantener el historial de archivos (funciona renombrando proyectos y / o soluciones):

1) Cerrar Visual Studio

2) En el archivo .gitignore, duplicar todas las rutas de acceso ignoradas del proyecto al que desea cambiar el nombre con versiones renombradas de esas rutas.

3) Use el comando git move así:

git mv <old_folder_name> <new_folder_name>

Consulte la documentación para ver opciones adicionales: https://git-scm.com/docs/git -mv

4) En su archivo .sln: Busque la línea que define su proyecto y cambie el nombre de la carpeta en la ruta. La línea debería verse así:

Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "<Project name>", "<path-to-project>\<project>.csproj"

5) Abra Visual Studio, haga clic derecho en proyecto - > Renombrar

6) Luego cambie el nombre de los espacios de nombres. Leí que resharper tiene algunas opciones para esto. Pero la simple búsqueda / reemplazo hizo el trabajo por mí.

7) Eliminar viejas rutas .gitignore

La solución de @ersnjanmyr: puede presionar Alt + Intro para que aparezca la página de propiedades del proyecto no disponible y configurar la ruta de archivo " " propiedad allí ya que no está disponible en el menú contextual clic-derecho del proyecto no disponible (en VS2008).

He escrito una pequeña herramienta que automatiza todos estos pasos. También admite subversión por ahora.

La información sobre las versiones actuales se puede encontrar aquí Visual Studio Project Renamer Infos

Las últimas versiones ahora se pueden descargar desde la Página de descarga de Visual Studio Project Renamer

Los comentarios son muy apreciados.

Aunque esta pregunta ya ha sido respondida, quería compartir mi enfoque para resolver este problema. A menudo tuve el mismo problema de cambiar el nombre de un proyecto en VS y editar el nombre de la carpeta, el nombre del proyecto y el archivo .sln para lograrlo. Acabo de escribir un VBScript que logra todo eso. Debe tener cuidado con las cadenas que elige para reemplazar.

EDITAR: solo tiene que colocar el archivo .vbs en el mismo directorio que el archivo .sln de la solución.

'Script parameters'
Solution = "Rename_Visual_Studio_Project" '.sln'
Project = "Rename_Visual_Studio_Project" '.csproj'
NewProject = "SUCCESS"

Const ForReading = 1
Const ForWriting = 2

Set objFso = CreateObject("Scripting.FileSystemObject")
scriptDirr = objFso.GetParentFolderName(wscript.ScriptFullName)

'Rename the all project references in the .sln file'
Set objFile = objFso.OpenTextFile(scriptDirr + "\" + Solution + ".sln", ForReading)
fileText = objFile.ReadAll
newFileText = Replace(fileText, Project, NewProject)
Set objFile = objFSO.OpenTextFile(scriptDirr + "\" + Solution + ".sln", ForWriting)
objFile.WriteLine(newFileText)
objFile.Close

'Rename the .csproj file'
objFso.MoveFile scriptDirr + "\" + Project + "\" + Project + ".csproj", scriptDirr + "\" + Project + "\" + NewProject + ".csproj"

'Rename the folder of the .csproj file'
objFso.MoveFolder scriptDirr + "\" + Project, scriptDirr + "\" + NewProject

Lo que funcionó para mí en 2017:

  • Cerrar solución VS
  • Directorio renombrado de proyectos en solución.
    • (cambio de empuje en control de fuente - git en mi caso)
  • edite el archivo sln en el editor de texto (fuera de VS2017) cambiando el nombre del directorio.
  • Reabrir solución en VS

Dijo algo así como " re-agregar proyecto " ;, reconstruí todo y todo estaba en marcha.

NOTA: esta solución es para Visual Studio 2008, pero debería funcionar aquí.

  1. Con el Explorador de Windows, cambie el nombre de las carpetas de la solución (la carpeta principal y la carpeta secundaria) al nuevo nombre de la solución.
  2. Elimine el archivo .sln ubicado en la carpeta principal.
  3. En Visual Studio, seleccione Archivo | Abrir proyecto.
  4. Profundice en la nueva carpeta que acaba de renombrar y abra el archivo .csproj (ubicado en la carpeta secundaria).
  5. Haga clic con el botón derecho en el nombre del proyecto y cámbiele el nombre a lo que desee. (Debe ser el mismo nombre que la carpeta en el paso 1.)
  6. Seleccionar archivo | Cerrar solución. Un cuadro de diálogo le preguntará si desea guardar los cambios en el archivo .sln . Haga clic en Sí.
  7. En el cuadro de diálogo Guardar archivo como, señale la carpeta PADRE que acaba de cambiar de nombre y haga clic en guardar. (NOTA: asegúrese de que el archivo .sln tenga el mismo nombre que la carpeta. No es obligatorio, pero mantiene la coherencia).

HECHO.

Cuando se usa TFS, el paso 2 consiste en cambiar el nombre de la carpeta en el control de origen y luego obtener lo último antes de volver a abrir la solución.

Recientemente hemos subido una versión beta de una extensión gratuita de VS que hace esto por ti. Echa un vistazo a la Galería VS: Descarga de la galería

Bueno, lo hice a mi manera

     
  • Cerrar Visual Studio 2012
  •  
  • Cambie el nombre de su subdirectorio al nombre preferido bajo .sln
  •  
  • Eliminar archivo * .suo
  •  
  • Abra la solución de nuevo, corrija las propiedades de los proyectos cargados para cumplir con el nuevo nombre del subdirectorio
  1. Cambiar el nombre del proyecto en la solución y la carpeta del proyecto

  2. Eliminar proyecto de la solución

  3. Agregue el proyecto existente a la solución (su proyecto renombrado)

Funciona para mí. TFS también rastreará nuevos proyectos.

Abra .sln en un archivo de texto y en la siguiente línea cambie a su nuevo nombre de carpeta Proyecto (" {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} ") = " Ricky " ;, " \. Csproj " ;, " {021CC6B0-8CFB-4194-A103-C19AF869D965} "

He tenido que hacer esto muchas veces. Es realmente útil poder reutilizar un proyecto existente pero poder cambiar el nombre del texto en espacios de nombres, archivos y carpetas. El uso de una búsqueda y sustitución recursivas, comenzando en la carpeta raíz, significa que el cambio de nombre no rompe los enlaces a los proyectos en los archivos de soluciones y las referencias de proyectos.

Con este fin, he creado un proyecto para hacer precisamente esto. La aplicación también hace un esfuerzo por ignorar las carpetas de control de versión como .git, .svn y el archivo de configuración .vs. Más información en el archivo README.

https://github.com/garethrbrown/vs-project-rename

Example

Después de cambiar el nombre de la carpeta, abra el archivo .sln en el bloc de notas y cambie la ruta a una nueva ruta.

Surgen problemas similares cuando se debe crear un nuevo proyecto y desea un nombre de carpeta de proyecto diferente al nombre del proyecto.

Cuando creas un nuevo proyecto, se almacena en

./path/to/pro/ject/YourProject/YourProject.**proj

Supongamos que desea tenerlo directamente en la carpeta ject :

./path/to/pro/ject/YourProject.**proj

Mi solución para lograr esto es crear el proyecto con la última parte de la ruta como su nombre, para que no cree un directorio adicional:

./path/to/pro/ject/ject.**proj

Cuando ahora cambia el nombre del proyecto desde Visual Studio, logra el objetivo sin tener que abandonar VS:

<*>

La desventaja de este enfoque es que debe ajustar el espacio de nombres predeterminado y también el nombre del binario de salida, y debe actualizar los espacios de nombres en todos los archivos incluidos en la plantilla del proyecto.

Uso VS 2013 y TFS 2013.

Lo hice así:

  1. Abra Visual Studio, sin abrir la solución, y use Source Control Explorer para buscar y cambiar el nombre de las carpetas de los proyectos
  2. Haga doble clic en el archivo de solución en Source Control Explorer para abrir una solución.
  3. Obtienes una pregunta: " Los proyectos se han agregado recientemente a esta solución. ¿Desea obtenerlos del control de código fuente? & Quot ;, y elige Sí
  4. Ahora la carpeta y la estructura del proyecto están allí, pero ahora los archivos, así que ahora obtienes la última versión del control de fuente
  5. Intente generar y confirmar cambios.

Hay un enfoque más simple que se probó en la Actualización 1 de VS 2013 y se aplica a proyectos conectados a TFS:

  • Abra VS pero deje que la solución se cierre
  • Abra el Explorador de código fuente y cambie el nombre de la carpeta deseada (la solución se cerrará para usted si no la cerró primero)
  • Haga clic derecho en la solución (desde Source Explorer también) y seleccione check-in
  • Abra la solución, le dirá que se han agregado nuevos proyectos, acepte para obtener los cambios.
  • Elimine el proyecto de la solución y agréguelo nuevamente, luego regístrese
  • Verifique que las referencias internas estén bien

La forma más sencilla es ir a la propiedad de la ventana cambiar el nombre de los espacios de nombre predeterminados y luego se hace el cambio de nombre

1-Cambiar el nombre del proyecto fuera de VS. 2-edite su_nombre_de_proyecto.sln con un editor de texto, cambie el nombre de la ruta a la nueva ruta

Hice lo siguiente:

  1. Cambie el nombre del proyecto desde vs2013. (opcional / no es necesario)

  2. Exportar el proyecto como una plantilla.

  3. Cierre la solución.

  4. Reabrir la solución

  5. Cree un proyecto a partir de la plantilla guardada y use el nombre que desee.

  6. Eliminar del explorador de soluciones el proyecto anterior.

En este punto, intenté compilar la nueva solución y para ello tuve que copiar manualmente algunos recursos y encabezados a la nueva carpeta del proyecto desde la carpeta del proyecto anterior. Haz esto hasta que se compile sin errores. Ahora este nuevo proyecto guardó el " .exe " archivo a la carpeta anterior. *

Entonces - >

  1. Vaya al explorador de Windows y copie manualmente el archivo de solución de la carpeta del proyecto anterior a la nueva carpeta del proyecto.

  2. Cierre la solución y abra la solución desde el nuevo proyecto.

  3. Cambió la configuración nuevamente a (x64) si es necesario.

  4. Eliminar la carpeta del proyecto con el nombre anterior de la carpeta de la solución.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top