Pergunta

Minha solução atual para renomear a pasta do projeto é:

  • Remova o projeto da solução.
  • Mudar o nome da pasta fora Visual Studio.
  • Re-adicionar o projeto à solução.

Existe alguma maneira melhor?

Foi útil?

Solução

TFS usuários: Se você estiver usando o controle de origem que requer que você avisar antes seus arquivos Renomear / pastas em seguida olhar para esta resposta em vez que abrange os passos adicionais necessários.


Para mudar o nome de um projeto pasta , arquivo (.*proj) e nome de exibição no visual studio:

  • Feche a solução.
  • Mudar o nome da pasta (s) fora do Visual Studio. (Rename no TFS se estiver usando o controle de origem)
  • Abra a solução, ignorando as advertências (resposta "não" se pediu para carregar um projeto do controle de origem).
  • Vá através de todos os indisponíveis projetos e ...
    • Abrir Propriedades janela para o projeto (destacar o projeto e pressione Alt + Enter ou F4 , ou clique com o botão direito> Propriedades).
    • Defina a propriedade 'Caminho Arquivo ' para o novo local.
      • Se a propriedade não é editável (como no VS2012), em seguida, abra o arquivo .sln diretamente em outro editor como o Notepad ++ e atualizar os caminhos lá em vez disso. (Você pode precisar de check-out da solução pela primeira vez em TFS etc.)
    • Atualizar o projeto -. Clique com o botão direito> projeto de recarga
    • Alterar o nome de exibição do projeto, destacando-o e pressionando F2 , ou clique com o botão direito> renomeação .

Nota:. Outras soluções sugeridas que envolvem a remoção e, em seguida, re-adicionando o projeto para a solução vai quebrar referências do projeto

Se você executar essas etapas, então você pode considerar também renomear o seguinte ao jogo:

  1. Assembleia
  2. Padrão / Root Namespace
  3. Namespace de arquivos existente (usar as ferramentas refactor no Visual Studio ou inconsistente ferramenta namespaces do ReSharper)

Considere também modificar os valores do seguinte conjunto de atributos :

  1. AssemblyProductAttribute
  2. AssemblyDescriptionAttribute
  3. AssemblyTitleAttribute

Outras dicas

Não há outra maneira de fazer isso, usando o .sol *, * arquivos csproj.

  1. abrir o seu arquivo de solução
  2. procurar o * .csproj você gostaria de alteração
  3. que será como esta (relativo ao arquivo .sol *):

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

  4. e apenas mudar a primeira parte para o novo diretory por exemplo:

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

  5. , claro, não se esqueça de mover todo o projeto para o diretório

Divirta-se.

Esta é a frente no VS 2015 (possivelmente funciona em versões mais antigas)

  1. No Solution Explorer, clique direito sobre Main solution > Rename
  2. No Solution Explorer, clique direito sobre project (under solution) > Rename
  3. No Solution Explorer, clique duplo ou clique direito sobre Properties >goto Tab Aplicação, Assembly name renomeação e Default namespace para corresponder.
  4. Se você deseja também mudar o nome do namespace, Abra um dos seus arquivos de classe. Clique direito a namespace > Rename... isso deve procurar e substituir todas as referências para o seu espaço de nomes ao longo do projeto.
  5. Feche o projeto> renomear o project folder.
  6. Editar arquivo .sln no bloco de notas, altere o caminho para o cjproj. ie fu\bar.csproj --> bar\bar.csproj

O homem, tenho lutado com isso. Infelizmente não há uma solução um clique no Visual Studio, mas se você estiver executando Visual Studio 2012 e seu projeto está sob controle origem com Team Foundation Server , é aqui como eu tenho que trabalhar, mantendo o histórico de origem:

(Certifique-se de ler @ de mjv comentário abaixo, como ele observa que você pode ignorar a etapa 5-10)

  1. Certifique-se de ter verificado em todas as mudanças, então você não tem alterações pendentes.
  2. Remova o projeto da solução, com o botão direito e selecionar Remover .
  3. Agora, no Windows Explorer, renomear a pasta do projeto.
  4. Volte para Visual Studio, e em Solution Explorer, clique direito a solução e escolha Adicionar -> projeto existente . Selecione o arquivo de projeto para o projeto que você removeu na etapa 2, que deve estar localizado na pasta renomeada.
  5. Agora o projeto está de volta na solução, mas o projeto não parece ser adicionado ao controle de origem. Para corrigir isso, aberto Source Control Explorer.
  6. Encontre a pasta do projeto em Source Control Explorer, que corresponde com a pasta do projeto em seu disco, que você renomeou na etapa 3.
  7. Mudar o nome da pasta em Source Control Explorer, por isso tem o mesmo nome que a pasta do projeto no disco.
  8. Agora, dê uma olhada em suas alterações pendentes. Você deve ter alterações no arquivo de solução e uma operação de mudança de nome na pasta do projeto.
  9. Faça um reconstruir e se certificar que tudo compila corretamente. Se você tivesse referências inter-projeto para o projeto que você renomeado, você precisa adicioná-los novamente para os projectos individuais que referenciados-lo.
  10. Você deve estar tudo pronto agora. Vá e confira tudo.

O guia acima funcionou para mim. Se ele não funciona para você, e tentar eliminar a sua solução local completamente e remover o mapeamento pasta na sua área de trabalho. Reinicie o Visual Studio para o caso. Certifique-se de que você realmente excluídos toda a solução do seu computador. Agora readd o mapeamento solução para o seu espaço de trabalho e obter a versão mais recente. Agora, tente os passos acima. O mesmo se aplica se algo der errado, enquanto seguindo os passos acima. Basta apagar a sua solução localmente e obter a mais recente fonte, e você terá uma ardósia limpa para trabalhar.

Se você ainda estiver tendo problemas, certifique-se de que você não mudou nada manualmente no arquivo de solução, ou tentar outros 'truques' antes de tentar os passos acima. Se você mudou alguma coisa e verifiquei-in, você pode querer considerar fazer uma reversão para o ponto antes de você começou a mexer com a mudança de nome do projeto.

É claro, você também quiser mudar o nome do projeto em si, no Solution Explorer. Você pode fazer isso antes de os passos acima, mas, nesse caso, certifique-se de check-in que a mudança antes de aplicar os passos acima. Você também pode fazê-lo mais tarde, mas certifique-se de seguir todos os passos acima em primeiro lugar, e check-in suas alterações antes de tentar mudar o nome o nome do projeto no Solution Explorer. Eu não recomendo tentar misturar os passos acima com uma renomeação do nome do projeto no Solution Explorer. Pode funcionar, porém, mas eu recomendo fazê-lo em 2 changesets separadas.

Atualmente, não. Bem, na verdade você pode clicar no nó do projeto quebrado e nas propriedades olhar painel para o 'Caminho' propriedade, em seguida, clique no pequeno ícone Procurar e selecione o novo caminho.

Voila:)

A solução mais simples é o seguinte:

  1. o botão direito do mouse no projeto e renomeá-lo.
  2. (Opcional) Abra as configurações de propriedade do projeto e modificar o nome do assembly (e, opcionalmente, o namespace padrão) para usar o novo nome do projeto.
  3. (opcional) Selecione o nome do namespace em um arquivo de origem, clique direito e selecione Refactor \ Renomear para globalmente mudar o nome do namespace para o novo nome do projeto.
  4. (opcional) Abra o arquivo AssemblyInfo.cs e mudar o nome do assembly para corresponder.
  5. Salve e feche a solução.
  6. Usando o Windows Explorer mudar o nome da pasta do projeto para o novo nome.
  7. Abra o arquivo SLN em um editor de texto e encontrar o caminho de referência para o caminho do projeto e alterá-lo para usar o novo nome da pasta.

Existem 4 passos necessários, mas 7 recomendadas. No final do dia, porém o projeto é renomeado completamente. Tecnicamente, o nome da pasta para o projeto não precisa ser igual ao projeto em si, por isso mesmo esse passo é opcional, mas pode ser confuso se eles não são iguais. Mesmo para os nomes de montagem e de namespace.

Em andersjanmyr de responder a sua mais fácil para renomear o projeto pela primeira vez.

  1. projeto Renomear.
  2. Feche a solução (salvá-lo).
  3. Renomear as pastas fora do Visual Studio.
  4. Abra a solução, ignorando os avisos.
  5. Vá através de todos os projectos indisponíveis e defina a propriedade 'Caminho do arquivo' para a nova localização do seu arquivo de projeto, ou seja, someproject.csproj.
  6. recarregar o projeto.

Além disso, após essas etapas são realizadas você pode querer mudar o nome de outras referências ao seu nome antigo projeto.

Em propriedades do projeto, atualizar o nome do assembly e Padrão Namespace. Isto irá atualizar o seguinte no arquivo de projeto ...

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

... e vai se livrar do erro "não Namespace não correspondem à localização do arquivo, deve ser: 'SomeProjectName'"

Renomear o namespace root (se você tiver ReSharper clique direito no Namespace e ir Refactor -> Rename).

Alterar todas as ocorrências de seu nome antigo projeto em AssemblyInfo.cs

Para VS2017 você pode usar minha extensão visual studio

download

Ele vai mudar o nome do projeto em:

  • pasta localização do projeto
  • arquivo de solução
  • referência em outros projetos
  • assembly nome, informações
  • namespace padrão

Eu apenas tive que fazer isso sozinho (usando VS2010). Como algumas pessoas têm respondido, o passo mais simples parece ser:

  1. Feche o projeto VS.
  2. Abra o arquivo .sln e renomear o prefixo diretório do projeto para cada uma das ocorrências csproj.
  3. Salve o arquivo .sln
  4. Renomeie o diretório pasta projeto real em seu disco rígido para coincidir com as alterações no arquivo .sln.
  5. Abra o .sln (em VS) e reconstruir

Vide item 3 em artigo ligado.

  1. Feche a solução e o IDE.
  2. Em Explorer:. Alterar o nome do diretório para o novo nome
  3. Em Explorer:. Abra o arquivo .sln com um editor de texto
  4. Alterar o nome do diretório para o novo nome e salvar.
  5. Reinicie o IDE e abra a solução do Arquivo, recentes do menu Arquivo se ele não é iniciado automaticamente.
  6. Clique na pasta do projeto do Solution Explorer e verificar a propriedade caminho nas propriedades na parte inferior. Vai agora ser referência para a nova pasta de projeto.

Ela trabalhou para mim.

solução comprovada para a extensão do Visual Studio para ferramentas de dados para Business Intelligence (SSDT-BI 2013):

  1. Mova a pasta do projeto para sua nova localização (fazer nada não renomeação ainda)
  2. No Solution Explorer, renomeie o / Solução projeto.
  3. Close (e salvar) o projeto recém-renomeado.
  4. Renomear pasta do projeto e ficheiro.SLN.
  5. Use um editor de texto e abra o arquivo solução projeto recém-renomeado (.sln) (eu usei o Notepad ++)
  6. Na linha número 6 você verá:. "Projeto {! Fdjfksdjk4387 ...} = "OLDPROJECT", "OLDFOLDER \ OLDPROJECT.rptproj" Renomear tudo com os novos nomes usados ??no passo 4. (ou seja ... = "newproject", "NewFolder \ NEWPROJECT.rptproj" ...)
  7. É isso aí!

Testado 100% e funcionou perfeitamente no meu caso.

NOTA: Não é possível confirmar se ele funciona sob diferentes modelos de projeto a / o as versões do Visual Studio. Como sempre, fazer backup de tudo de antemão.

Para aqueles que usam Visual Studio + git e querendo manter a história de arquivo (obras renomear ambos os projectos e / ou soluções):

1) Fechar Visual Studio

2) No arquivo .gitignore duplicar tudo ignorar caminhos de projeto que você deseja renomear com versões renomeadas desses caminhos.

3) Use git comando de movimento como este:

git mv <old_folder_name> <new_folder_name>

Veja a documentação para opções adicionais: https://git-scm.com/docs/git -mv

4) No seu arquivo .sln: Encontre a linha que define seu projeto e alterar o nome da pasta no caminho. A linha deve ser algo como:

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

5) Abra o Visual Studio, clique direito sobre projeto -> Rename

6) Depois renomear os espaços de nomes. Eu li que o ReSharper tem algumas opções para isso. Mas simples localizar / substituir fez o trabalho para mim.

7) Retirar caminhos .gitignore velhos

@ do andersjanmyr Solução: você pode pressionar Alt + Enter para abrir a página Propriedades para o projeto disponível e definir a propriedade "Caminho do arquivo" lá; uma vez que não está disponível no-click_context-menu da direita do projeto disponível (no VS2008).

Eu escrevi uma pequena ferramenta que automatiza todas essas etapas. Também suporta subversão por agora.

As informações sobre lançamentos atuais pode ser encontrada aqui Visual Estúdio Projeto Renamer Infos

latests lançamentos já pode ser baixado a partir do Visual Studio Projeto Renamer página de download

O feedback é muito apreciado.

Embora esta pergunta já foi respondida eu queria compartilhar a minha abordagem para resolver este problema. Muitas vezes eu tive o mesmo problema de renomear um projeto no VS e editar o nome da pasta, nome do projeto e ficheiro.SLN, a fim de conseguir isso. Eu só escreveu um VBScript que realiza tudo isso. Você tem que ter cuidado com as cordas que você escolher para substituir.

EDIT:. Você apenas tem que colocar o arquivo .vbs no mesmo diretório que o arquivo .sln da solução

'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

O que funcionou para mim em 2017:

  • Fechar solução VS
  • diretório Renomeado de projetos na solução.
    • (mudança de pressão no controle de origem - git no meu caso)
  • editar o arquivo sln no editor de texto (fora VS2017) Mudança de nome do diretório.
  • Reabrir solução em VS

Ele disse algo como " re-adicionando projeto ", eu reconstruí tudo e tudo foi bom para ir.

NOTA:. Esta correcção é para o Visual Studio 2008, mas deve funcionar aqui

  1. Usando o Windows Explorer, ambas as pastas de solução de mudança de nome (a pasta pai e da pasta filho) para o novo nome da solução.
  2. Exclua o arquivo .sln localizado na pasta principal.
  3. No Visual Studio, selecione Arquivo |. Abrir projeto
  4. Fure a nova pasta que você acabou renomeado e abra o arquivo .csproj (localizado na pasta da criança).
  5. botão direito do mouse no nome do projeto e renomeá-lo para o que quiser. (Deve ser o mesmo nome que a pasta na etapa 1).
  6. Selecione Arquivo | Fechar solução. Uma caixa de diálogo irá perguntar se você deseja salvar as alterações para o arquivo .sln. Clique em Sim.
  7. Na Salvar arquivo como caixa de diálogo, aponte para a pasta pai, recentemente renomeado e clique em Salvar. (NOTA:.. Verifique se o arquivo .sln tem o mesmo nome que a pasta Não é necessário, mas mantém a consistência)

FEITO.

Ao usar TFS passo 2 é realmente para mudar o nome da pasta no controle de origem e, em seguida, obter as últimas antes de reabrir a solução.

Nós enviado recentemente uma versão beta de uma extensão VS livre que faz essas coisas para você. Ter um olhar para VS Gallery: Gallery Baixar

Bem, eu fiz do meu jeito

  • Feche o Visual Studio 2012
  • Renomeie o subdiretório de nome preferido sob .sln
  • Excluir * .suo arquivo
  • solução aberta novamente, corrija quaisquer propriedades do projeto (s) carregado para atender novo nome subdiretório
  1. projeto Rename em solução e o projeto pasta

  2. projeto Excluir solução

  3. Adicionar projeto existente para solução (seu projeto renomeado)

Ele funciona para mim. TFS também irá acompanhar novo projeto.

.sln Abrir em um arquivo de texto e na seguinte mudança de linha para seu novo nome da pasta Projeto ( "{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ricky", "\ .csproj", "{021CC6B0-8CFB-4194-A103-C19AF869D965}"

Eu tive que fazer isso muitas vezes. É muito útil para ser capaz de redirecionar um projeto existente, mas ser capaz de mudar o nome de texto em namespaces, arquivos e pastas. Usando um achado recursiva e substituir a partir de meios pasta raiz a renomeação não quebrar links para projectos nos arquivos de solução e referências do projeto.

Para este fim eu criei um projeto para fazer exatamente isso. O aplicativo também faz um esforço para ignorar pastas de controle de versão, como .git, .svn e arquivo as .VS configurações. Mais informações no README.

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

Exemplo

Depois de mudar o nome da pasta, abra o arquivo .sln no bloco de notas e altere o caminho para novo caminho.

Problemas semelhantes surgem quando um novo projeto tem que ser criado, e você quer um nome de pasta de projeto diferente do que o nome do projeto.

Quando você cria um novo projeto, que fica armazenado em

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

Vamos supor que você queria tê-lo diretamente na pasta ject:

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

Minha solução para alcançar este objetivo é criar o projeto com a última parte do caminho como o seu nome, de modo que ele não cria um diretório adicional:

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

Quando você agora mudar o nome do projeto de dentro do Visual Studio, você atingir o objetivo sem ter que sair VS:

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

A desvantagem dessa abordagem é que você tem que ajustar o namespace padrão e o nome do binário de saída, bem como, e que você tem que namespaces de atualização em todos os arquivos que estão incluídos dentro do modelo de projeto.

Eu uso o VS 2013 e TFS 2013.

Eu fiz isso como este:

  1. Abra o Visual Studio, sem solução de abertura em si, ea utilização Source Control Explorer para encontrar e pastas renomear para projetos
  2. arquivo de solução duplo clique em Source Control Explorer para abrir uma solução.
  3. Você tem uma pergunta: "Projetos foram recentemente adicionados a esta solução Você quer obtê-los de controle de origem?", E você escolher Sim
  4. Agora a pasta e estrutura do projeto estão lá, mas agora os arquivos, então agora você Obter versão mais recente do controle de origem
  5. Tente construir e consolidar as alterações.

Há uma abordagem mais simples que foi testado no VS 2013 Update 1 e aplicável para projectos TFS conectados:

  • Open VS, mas deixar a solução fechada
  • Open Source Explorer e renomeie a pasta desejada (a solução será fechada para você, se você já não fechá-lo primeiro)
  • botão direito do mouse sobre a solução (a partir Source Explorer também) e selecione check-in
  • Abra a solução, você disse que não está novos projetos adicionados, aceitar para obter as alterações.
  • Remova o projeto da solução e adicioná-lo novamente, em seguida, o check-in
  • Verifique se as referências internas são OK

A maneira mais simples é ir para a propriedade do nome mudança janela de namespaces padrão, em seguida, a renomeação é feito

1-Renomeie o exterior VS. projeto 2-edit your_project_name.sln com um editor de texto, mudar o nome do caminho para o novo caminho

Eu fiz o seguinte:

  1. Renomeie o projeto de dentro vs2013. (Opcional / não é necessário)

  2. Exportar o projeto como um modelo.

  3. Fechar a solução.

  4. Reabrir a solução

  5. Crie um projeto do modelo salvo e usar o nome que você gosta.

  6. Excluir a solução explorador do projeto anterior.

Neste ponto, eu tentei compilar a nova solução e para isso eu tive que copiar manualmente alguns recursos e cabeçalhos para a nova pasta de projeto da pasta de projeto antigo. Faça isso até que ele compila sem erros. Agora, este novo projeto salvou o " .exe" arquivo para a pasta anterior. *

Assim ->

  1. Vá para o Windows Explorer e copiar manualmente o arquivo de solução a partir da pasta de projeto antigo para o novo pasta do projeto.

  2. Fechar a solução, e abra a solução de dentro do novo projeto.

  3. Mudou a volta de configuração para (x64), se necessário.

  4. Excluir a pasta do projeto com o nome antigo da pasta da solução.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top