名前を変更する必要があるかなり複雑なVisual Studioソリューション(2010年ですが、問題ではありません)があります。
新しいソリューション名と一致するようにフォルダーの名前を変更したいのですが、フォルダー名を自動的にリファクタリングする方法がわからず、プロジェクトファイルを1つ1つ確認するのは面倒です。
これを行う公式の方法はありますか?代わりに(そして、はるかに望ましくはありません)、これを達成するための無料のツールはありますか?
名前を変更する必要があるかなり複雑なVisual Studioソリューション(2010年ですが、問題ではありません)があります。
新しいソリューション名と一致するようにフォルダーの名前を変更したいのですが、フォルダー名を自動的にリファクタリングする方法がわからず、プロジェクトファイルを1つ1つ確認するのは面倒です。
これを行う公式の方法はありますか?代わりに(そして、はるかに望ましくはありません)、これを達成するための無料のツールはありますか?
回答:
.slnファイルを手動で編集する
このメソッドは、Windowsエクスプローラで表示されるように、プロジェクトのディレクトリの名前を変更することを完全に目的としています。
この方法は、以下のプロジェクトファイルの削除/追加方法(参照が消える)の問題の影響を受けませんが、プロジェクトがソース管理下にある場合に問題が発生する可能性があります(以下の注を参照)。これが、ステップ2(バックアップ)が非常に重要である理由です。
Project1
しProject2
ます。Project1
をProject2
使用するように変更します。Project1
をProject2
使用するように変更します。これにより、ファイルの履歴が保持されます。たとえばTortoiseSVN
、でファイルを右クリックし、を選択しますTortoiseSVN .. Rename
。Project1
あることをProject2
などのテキストエディタ使用して、メモ帳を。あなたも見ることができ、手動でソリューションの名前変更またはこの手動のプロセスを説明するポストを。
メリット
警告
アップデート2014-11-02
ReSharperは、上記の手動の方法と同じ結果を達成するための自動化された方法を追加しました。名前空間が波線の青い線で下線が引かれている場合は、アクションピラミッドアイコンをクリックして次のいずれかを実行します。
2番目のケースでは、最後の単語でWindowsエクスプローラの新しいディレクトリ名を定義ViewModel2
しますViewModel2
。たとえば、名前空間をに変更した場合、ファイルをfolderに移動することが提案されます。
ただし、これによってソース管理のファイルが更新されるとは限らないため、手動の方法を使用する必要がある場合があります。
2018-01-31を更新
Visual Studio 2008、2010、2012、2013、2015、2017 Update 1、2、3、4、5でテスト済み。
アップデート2020-05-02
Visual Studio 2019でテスト済み。
ソリューションの名前を変更するには、次の手順を実行する必要があります。
namespace WindowsFormsApplication1
Properties / AssemblyInfo.csのAssemblyTitleおよびAssemblyProductを変更します。
[assembly: AssemblyTitle("New Name Here")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("New Name Here")]
[assembly: AssemblyCopyright("Copyright © 2013")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
binおよびobjディレクトリを物理的に削除します。
プロジェクトの物理フォルダディレクトリの名前を変更します。
SLNファイルを(メモ帳または任意のエディター内で)開き、プロジェクトへのパスを変更します。
プロジェクトを削除して再構築します。
Dataset
手動で管理する必要があります(プロジェクトに接続している場合)。
\Packages\repositories.config
ファイル内のプロジェクトパスを逃しました 。
Visual Studioの名前変更操作では、ファイル名のみが変更されます。つまり、プロジェクトの場合は* .prjで、ソリューションの場合は* .slnです。ファイルシステムを使用してフォルダの名前を個別に変更する必要があります。また、プロジェクトには新しいフォルダ名が付けられるため、プロジェクトを削除して再読み込みする必要があります。ただし、ソリューションファイルとプロジェクトファイルはそれぞれtexstファイルとxmlファイルであることに注意してください。それらを解析し、フォルダー名とファイル名の両方の名前を変更し、プロジェクト/ソリューションファイルを内部で修正する独自のプログラムを作成できます。
テンプレートをエクスポートし、エクスポートしたテンプレートから新しいプロジェクトを作成して、名前を好きなように変更することもできます
以下は、Visual Studio 2013でソリューション全体の名前を変更する手順です。
「HelloWorld.ui」という名前のプロジェクトを「Section1to5.ui」に変更するとします。
名前を変更したプロジェクトを右クリックし、[プロパティ]をクリックします。「アプリケーション」タブで、「アセンブリ名」と「デフォルトの名前空間」を変更します。
メインのProgram.csファイル(または作成した他のコードファイル)で、名前空間宣言の名前を変更して、新しい名前を使用します。これを行うには、名前空間を右クリックし、「リファクタリング」>「名前変更」を選択して、新しい名前を入力します。例えば:
名前空間HelloWorld.ui ---->名前空間Section1to5.ui
次に、「プロパティ」を展開し、AssemblyInfo.csファイルをダブルクリックします。以下のコードの断片に気づくでしょう:
[assembly: AssemblyTitle("HelloWorld.ui")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("Microsoft")] [assembly: AssemblyProduct("HelloWorld.ui")] [assembly: AssemblyCopyright("Copyright © Microsoft 2015")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")]
Properties / AssemblyInfo.csのAssemblyTitleとAssemblyProductを新しい名前に変更する必要があります。この例では、「HelloWorld.ui」から「Section1to5.ui」に変更します。名前の変更が完了したら、Visual Studioを保存して閉じます。
プロジェクトディレクトリで、「HelloWorld.ui」フォルダ内に移動し、「bin」および「obj」ディレクトリを削除します。
完了したら、「HelloWorld.ui」フォルダの名前を新しいプロジェクト名に変更します。
名前を変更したソリューションファイルをNotepadやNotepad ++などのテキストエディターで開き、次の行を編集します。
Project( "{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}")= "HelloWorld.ui"、 "HelloWorld.ui \ HelloWorld.ui.csproj"、 "{39FC65A3-3AE7-4EC9-B8F7-74F971636C70}"
「HelloWorld.ui」のすべてのインスタンスを、プロジェクトに選択した新しい名前(この場合は「Section1to5.ui」)に置き換えます。これにより、プロジェクトのパスが手順6で名前を変更したディレクトリに変更されます。
Visual Studioでソリューションファイルを開き、プロジェクトをクリーンアップして再ビルドします。
「Debug / Run」ボタンが「Attach」ボタンに置き換えられていることに気付くでしょう。この場合は、プロジェクトを右クリックして、[スタートアッププロジェクトに設定]オプションを選択します。または、[ツール]> [カスタマイズ]> [コマンド]> [コマンドを追加]> [デバッグ]をクリックして、ボタンを追加します。
プロジェクトの名前の変更は完了です。疑問がある場合は遠慮なく投稿してください。手伝っていただけると嬉しいです。
ASP.NET Core 2ソリューションでプロジェクトの名前を正常に変更するために、Visual Studio拡張機能「Full Rename Project」を使用しました。
次に、ReSharperを使用して名前空間を調整しました(プロジェクトを右クリックし、リファクタリングし、名前空間を調整します...)
Notepad ++の「ファイルから検索」機能を使用すると、うまく機能しました(Ctrl + H、ファイルから検索)。
プロジェクトファイルメソッドの削除/追加
このメソッドは、Windowsエクスプローラで表示されるように、プロジェクトのディレクトリの名前を変更することを完全に目的としています。
メリット
短所
プロジェクトを右クリックして[Windowsエクスプローラーでフォルダーを開く]を選択すると、このプロセスの実行中にプロジェクトが保存されている場所を追跡するのに役立ちます。
Xamarinなどの共有プロジェクトの読み込みに問題がある場合は、csprojファイル内の共有ライブラリへの参照を変更することを忘れないでください。CocosSharpゲームを開発しましたが、Droid / iOS / WP81プロジェクトをロードしたくありませんでした。Shared libを参照するすべてのcsprojファイル(Driod / iOS / WP81)の行の下を変更する必要がありました。これはフォルダ名の変更が原因で発生したため、YOUR_PREVIOUS_NAMESPACEを新しいフォルダ名に置き換えてください。
<Import Project="..\YOUR_PREVIOUS_NAMESPACE.Shared\EmptyProject.Shared.projitems" Label="Shared" />
また、.Driodプロジェクトの場合、Visual Studioを使用してプロジェクトプロパティのアセンブリ名を変更できないことにも気付きました(私は2015を使用しています)。.Droid.csprojファイルでアセンブリ名を手動で変更する必要がありました。
<AssemblyName>YourNameSpace</AssemblyName>
次に、ソリューションをロードし、プロジェクトプロパティビューに新しい名前が表示されました。その名前のdllを再構築した後、生成されました。
Visual Studio 2010でWebサイトを作成している場合。次のようにプロジェクト名を変更できます。
ステップ1:Visual Studio 2010では、SLNファイルはVisual Studio 2010内のプロジェクトフォルダーに保存され、ソースファイルはVisual Studio 2010内のWebサイトフォルダーに保存されます。
手順2:SLNプロジェクトを含む[名前の変更]を右クリックして、フォルダーの名前を変更します。
手順3:SLNファイルを右クリックして名前を変更して、SLNファイルの名前を変更します。
手順4:Visual Studio 2010のWebサイトで、そのSLNファイルのソースを含むフォルダーの名前を変更します。
ステップ5:次に、最後にSLNファイルをダブルクリックし、SLNソースフォルダーのルートを変更します。
WEBプロジェクトのVisual Studio 2013で私のために機能する唯一のソリューション:
「project1」の名前を「project2」に変更したいとしましょう。私の.slnファイルへの物理パスがc:\ my \ path \ project1 \ project1.slnであるとしましょう
そのため、.csprojファイル、binおよびobjフォルダーへのパスは、c:\ my \ path \ project1 \ project1 \である必要があります。
project1.slnファイルをダブルクリックして、VSでソリューションを開きます。
ソリューションエクスプローラーで、プロジェクト(ソリューションではなく!!!)を右クリックし、[名前の変更]を選択して、新しい名前を入力します。
ソリューションエクスプローラーでプロジェクトを右クリックし、[プロパティ]を選択します。「アプリケーション」タブで、「アセンブリ名」と「デフォルトの名前空間」を変更します。
メインのCSファイル(またはGlobal.asaxなどの他のコードファイル)で、名前空間宣言の名前を変更して、新しい名前を使用します。これを行うには、名前空間を右クリックし、「リファクタリング」>「名前変更」を選択して、新しい名前を入力します。例えば:
名前空間プロジェクト1
4.1ソリューションエクスプローラーで、プロジェクト(ソリューションではなく!!!)を右クリックし、[名前の変更]を選択して、新しい名前を入力します。
1 [アセンブリ:AssemblyTitle( "ここに新しい名前")] 2 [アセンブリ:AssemblyDescription( "")] 3 [アセンブリ:AssemblyConfiguration( "")] 4 [アセンブリ:AssemblyCompany( "")] 5 [アセンブリ:AssemblyProduct( "ここに新しい名前 ")] 6 [アセンブリ:AssemblyCopyright("著作権©2013 ")] 7 [アセンブリ:AssemblyTrademark(" ")] 8 [アセンブリ:AssemblyCulture(" ")]
Visual Studioを閉じます。
binおよびobjディレクトリを物理的に削除します。
親フォルダーとソースフォルダーの名前を新しい名前(project2)に変更します。
例では、c:\ my \ path \ project1 \ project1
c:\ my \ path \ project2 \ project2になります
SLNファイルの名前を変更するには、そのSLNファイルを右クリックして[名前の変更]をクリックします。
最後に、SLNファイルを(メモ帳または任意のエディター内で)開き、古い名前をコピーして(Ctrl + h)新しい名前に置き換えます。
VSを開き、ビルド->ソリューションのクリーンをクリックします
[ビルド]-> [ソリューションのビルド]をクリックし、次にF5をクリックして実行します...
注1:次のようなエラーが発生した場合:コンパイルエラーCS0246:タイプまたは名前空間名 'project2'が見つかりませんでした(usingディレクティブまたはアセンブリ参照がありませんか?)
ソースファイル:c:\ Users \ Username \ AppData \ Local \ Temp \ Temporary ASP.NET Files \ root \ 78dd917f \ d0836ce4 \ App_Web_index.cshtml.a8d08dba.b0mwjmih.0.cs
次に、「Temporary ASP.NET Files」フォルダに移動して、すべてを削除します。
VSは初めてです。同じ問題が発生しました。開始したプロジェクトの名前を数週間後に変更する必要がありました。これは私がやったことで、うまくいきました。
おそらくより多くのステップがありますが、タイピングはほとんどまたはまったくありません。マウスをクリックするだけです。それが役に立てば幸い :)
https://gist.github.com/n3dst4/b932117f3453cc6c56beリンクをたどったところ、ソリューション全体の名前を変更できました。
このリンクの回答とともに
ウェブサイトの名前を変更するには:
http://www.c-sharpcorner.com/Blogs/46334/rename-website-project-in-visual-studio-2013.aspx
次の場所にあるIISExpressのapplicationhost.configを見つけて編集します:C:\ Users {username} \ Documents \ IISExpress \ config