1. ホーム
  2. asp.net-core

[解決済み] .NET Core - "dotnet new sln "を使用する場合

2023-01-08 04:08:13

質問

私が読んできた大部分の .NET Core チュートリアルは、"dotnet new sln" について言及していません。

  1. dotnet new sln" は新しいコマンドですか。

  2. いつこれを使用する必要がありますか。プロジェクト ファイルだけでなく、.sln ファイルを作成することで、どのような利点がありますか。主にVisual Studioで開くためでしょうか?私はMac版Visual Studio Codeを使用しているので、該当しないかもしれません。

私は "dotnet new sln" でググってみましたが、結果はごくわずかでした。

どのように解決するのですか?

dotnet new sln"は新しいコマンドですか?

dotnet コマンド ライン インターフェイスのバージョン 1.0.1 では、新しいコマンドとして dotnet new sln コマンドがあります。このコマンドには を追加すると、project.jsonからcsprojに変更されます。 . もし dotnet new --help を実行すると、テンプレートの1つとして"Solution File"が表示されます。

> dotnet new --help

Templates                 Short Name      Language      Tags
----------------------------------------------------------------------
Console Application       console         [C#], F#      Common/Console
Class library             classlib        [C#], F#      Common/Library
Unit Test Project         mstest          [C#], F#      Test/MSTest
xUnit Test Project        xunit           [C#], F#      Test/xUnit
ASP.NET Core Empty        web             [C#]          Web/Empty
ASP.NET Core Web App      mvc             [C#], F#      Web/MVC
ASP.NET Core Web API      webapi          [C#]          Web/WebAPI
Solution File             sln                           Solution

どのような場合に使用するのでしょうか?

ソリューションファイルを使用するタイミングは2つです。

  1. Visual Studio を使用する場合、および/または
  2. 複数のプロジェクトを 1 つのユニットとして管理したい場合。

プロジェクト ファイルだけでなく、.sln ファイルを作成することでどのような利点がありますか。主に Visual Studio で開くためでしょうか。私はMac版Visual Studio Codeを使用しているので、適用できないかもしれません。

Visual Studioを必要としない利点として、複数のプロジェクトを1つの単位として管理できることが挙げられます。

たとえば、Visual Studio Code がインストールされた Mac では、複数のプロジェクトに対応するために dotnet CLI を使用して、新しいソリューションを作成し、いくつかのプロジェクトを作成し、それらのプロジェクトをソリューションに追加し、ソリューションを復元し、ソリューションを構築することができます。

dotnet new sln --name FooBar
dotnet new console --name Foo --output Foo
dotnet new console --name Bar --output Bar
dotnet sln add .\Foo\Foo.csproj
dotnet sln add .\Bar\Bar.csproj
dotnet restore
dotnet build FooBar.sln

最後のコマンドは dotnet build を呼び出す最後のコマンドは、ソリューションに含まれるすべてのプロジェクトを構築するという利点があります。ソリューションがない場合、私たちは dotnet build を各プロジェクトで呼び出す必要があります。

Visual Studio を使用する必要がない他の利点があることは間違いありません。それらを発見するのはあなた方にお任せします。