なぜ SLN を CSPROJ に変換するのですか?
Visual Studio Solution File (.sln) は、プロジェクトのパス、GUID、およびビルド構成のマッピングを含むプレーンテキストのマニフェストであり、コードやプロジェクトの定義は含まれていません。リストされている .csproj ファイルは、ディスク上のサブディレクトリに個別の XML ファイルとしてすでに存在しています。.sln を .csproj に変換することは、目次をそれがリストしている章の1つに変換しようとするようなものです。その章はすでに独立したファイルとして存在しています。
SLN から CSPROJ への変換方法
Visual Studio APP
「ファイル」>「開く」>「プロジェクト/ソリューション」を選択し、.sln を完全にバイパスして .csproj ファイルを直接選択します。
VS Code with C# Dev Kit FREE
.csproj を含むフォルダーを開きます。C# Dev Kit 拡張機能が .sln を必要とせずにプロジェクトを自動的に検出してロードします。
JetBrains Rider APP
ウェルカム画面から .csproj を直接開きます。Rider はソリューションファイルを必要とせずに個別のプロジェクトをロードします。
これらの形式について
SLN ファイルは Visual Studio の «ソリューション» です。これは 1 つ以上のコードプロジェクト(.csproj、.vcxproj など)をグループ化し、まとめてビルドできるようにするプレーンテキストファイルです。Microsoft Visual Studio でダブルクリックして開くか、無料の VS Code(C# Dev Kit 拡張機能付き)または…
.SLN の詳細を開く →CSPROJ ファイルは C# プロジェクト ファイルです。これは Microsoft によって作成された XML ファイルで、ビルド システムに対して、どのソース ファイルを含めるか、どの NuGet パッケージを使用するか、どの .NET バージョンをターゲットにするかなど、1 つの C# プロジェクトをコンパイルする方法を指示します。ソース…
.CSPROJ の詳細を開く →品質と注意点
.slnは1つ以上のプロジェクトを共有ワークスペースにグループ化するものです。参照される.csprojファイルはすでにディスク上の個別の XML ファイルであり、.slnにそれらが含まれているわけではありません。- リポジトリに
.csprojが見当たらない場合、.slnにはそれが存在するはずのパスのみが保存されています。サブディレクトリを確認するか、プロジェクトを共有した担当者に問い合わせてください。 - 新しい
.csprojをゼロから作成するには、ターミナルでdotnet new classlib -n MyLibrary(またはconsole、webapiなど)を実行します。
よくある質問
ソリューション内の1つのプロジェクトだけが必要です。 .sln は必要ですか?
.csproj を Visual Studio、Rider、または VS Code で直接開いてください。.sln は、複数のプロジェクトをまとめてビルドしたり操作したりする場合にのみ必要です。新しい .csproj をゼロから作成できますか?
dotnet new classlib -n MyLibrary(または console、webapi など)を実行し、必要に応じて dotnet sln add で既存のソリューションに追加します。リポジトリに .csproj がありません。何が起きたのでしょうか?
.sln はプロジェクトファイルへのパスのみを保存します。.csproj が見当たらない場合は、リポジトリにコミットされていないか、.sln 内のパスが間違っている可能性があります。