Sdílet prostřednictvím


dotnet sln

Tento článek se vztahuje na: ✔️ .NET 6 SDK a novější verze

Jméno

dotnet sln – Vypíše nebo upraví projekty v souboru řešení .NET nebo migruje soubor do souboru .slnx.

Přehled

dotnet sln [<SOLUTION_FILE>] [command]

dotnet sln [command] -h|--help

Popis

Příkaz dotnet sln poskytuje pohodlný způsob, jak vypsat a upravit projekty v souboru řešení.

Vytvoření souboru řešení

Pokud chcete použít příkaz dotnet sln, soubor řešení už musí existovat. Pokud ho potřebujete vytvořit, použijte příkaz dotnet new s názvem šablony sln.

Následující příklad vytvoří soubor .slnx v aktuální složce se stejným názvem jako složka:

dotnet new sln

Následující příklad vytvoří soubor .slnx v aktuální složce se zadaným názvem souboru:

dotnet new sln --name MySolution

Následující příklad vytvoří soubor .slnx v zadané složce se stejným názvem jako složka:

dotnet new sln --output MySolution

Poznámka:

V .NET 9 a starších verzích dotnet new sln vytvoří soubor .sln místo souboru .slnx .

Argumenty

  • SOLUTION_FILE

    Soubor řešení, který se má použít (soubor .sln nebo .slnx).

    Pokud není zadaný, příkaz vyhledá v aktuálním adresáři soubor .sln nebo .slnx a pokud najde přesně jeden, použije tento soubor. Pokud se najde více souborů řešení, zobrazí se uživateli výzva k explicitní zadání souboru. Pokud se žádné nenajde, příkaz selže.

Možnosti

  • -?|-h|--helpVytiskne popis použití příkazu.

Příkazy

K dispozici jsou následující příkazy:

list

Zobrazí seznam všech projektů v souboru řešení.

Přehled

dotnet sln list [-h|--help]

Argumenty

  • SOLUTION_FILE

    Soubor řešení (.sln nebo soubor .slnx ) nebo filtr řešení (soubor .slnf ), který se má použít.

    Pokud není zadaný, příkaz vyhledá v aktuálním adresáři soubor .sln, .slnx nebo .slnf a pokud najde přesně jeden, použije tento soubor. Pokud se najde více souborů řešení nebo filtrů, zobrazí se uživateli výzva k explicitní zadání souboru. Pokud se žádné nenajde, příkaz selže.

    (Podpora souborů .slnf byla přidána v sadě .NET SDK 9.0.3xx.)

Možnosti

  • -?|-h|--helpVytiskne popis použití příkazu.

add

Přidá jeden nebo více projektů do souboru řešení.

Přehled

dotnet sln [<SOLUTION_FILE>] add [--in-root] [-s|--solution-folder <PATH>] <PROJECT_PATH> [<PROJECT_PATH>...]
dotnet sln add [-h|--help]

Argumenty

  • SOLUTION_FILE

    Soubor řešení, který se má použít (soubor .sln nebo .slnx).

    Pokud není zadaný, příkaz vyhledá v aktuálním adresáři soubor .sln nebo .slnx a pokud najde přesně jeden, použije tento soubor. Pokud se najde více souborů řešení, zobrazí se uživateli výzva k explicitní zadání souboru. Pokud se žádné nenajde, příkaz selže.

  • PROJECT_PATH

    Cesta k projektu nebo projektům, které chcete přidat do řešení. Prostředí unix/Linux vzor globbingu rozšíření jsou správně zpracovány příkazem dotnet sln.

    Pokud PROJECT_PATH obsahuje složky, které obsahují složku projektu, použije se tato část cesty k vytvoření složek řešení. Následující příkazy například vytvoří řešení s myapp ve složce řešení folder1/folder2:

    dotnet new sln
    dotnet new console --output folder1/folder2/myapp
    dotnet sln add folder1/folder2/myapp
    

    Toto výchozí chování můžete přepsat pomocí --in-root nebo možnosti -s|--solution-folder <PATH>.

Možnosti

  • -?|-h|--help

    Vytiskne popis použití příkazu.

  • --in-root

    Umístí projekty do kořenového adresáře řešení místo vytvoření složky řešení . Nelze použít s -s|--solution-folder.

  • -s|--solution-folder <PATH>

    Cílová složka řešení cestu pro přidání projektů. Nelze použít s --in-root.

remove

Odebere projekt nebo více projektů ze souboru řešení.

Přehled

dotnet sln [<SOLUTION_FILE>] remove <PROJECT_PATH|PROJECT_NAME> [<PROJECT_PATH|PROJECT_NAME>...]
dotnet sln [<SOLUTION_FILE>] remove [-h|--help]

Argumenty

  • SOLUTION_FILE

    Soubor řešení, který se má použít (soubor .sln nebo .slnx).

    Pokud není zadaný, příkaz vyhledá v aktuálním adresáři soubor .sln nebo .slnx a pokud najde přesně jeden, použije tento soubor. Pokud se najde více souborů řešení, zobrazí se uživateli výzva k explicitní zadání souboru. Pokud se žádné nenajde, příkaz selže.

  • PROJECT_PATH nebo PROJECT_NAME

    Cesta k projektu nebo projektům, které se mají z řešení odebrat, nebo jeho název. Prostředí unix/Linux vzor globbingu rozšíření jsou správně zpracovány příkazem dotnet sln.

    Pokud je místo cesty zadaný název projektu, odebere se projekt v řešení, který odpovídá názvu bez ohledu na jeho cestu. Pokud se v řešení najde více než jeden odpovídající projekt, příkaz se chybí. V názvu vynecháte příponu souboru projektu. (Podpora pro odebrání projektů podle názvu byla přidána do .NET 10.)

Možnosti

  • -?|-h|--helpVytiskne popis použití příkazu.

migrate

Vygeneruje soubor řešení .slnx ze souboru .sln.

Přehled

dotnet sln [<SOLUTION_FILE>] migrate
dotnet sln [<SOLUTION_FILE>] migrate [-h|--help]

Argumenty

  • SOLUTION_FILE

    Soubor řešení .sln, který se má migrovat.

    Pokud není zadaný, příkaz vyhledá v aktuálním adresáři soubor .sln a pokud najde přesně jeden soubor, použije tento soubor. Pokud se najde více .sln souborů, zobrazí se uživateli výzva k explicitní zadání souboru. Pokud se žádné nenajde, příkaz selže.

    Pokud místo souboru .sln zadáte soubor .slnx nebo pokud soubor .slnx se stejným názvem souboru (bez přípony .sln) už v adresáři existuje, příkaz selže.

Možnosti

  • -?|-h|--helpVytiskne popis použití příkazu.

Příklady

  • Zobrazení seznamu projektů v řešení:

    dotnet sln todo.slnx list
    
  • Přidejte projekt c# do řešení:

    dotnet sln add todo-app/todo-app.csproj
    
  • Odebrání projektu jazyka C#z řešení:

    dotnet sln remove todo-app/todo-app.csproj
    
  • Přidejte do kořenového adresáře řešení několik projektů jazyka C#:

    dotnet sln todo.slnx add todo-app/todo-app.csproj back-end/back-end.csproj --in-root
    
  • Přidejte do řešení více projektů jazyka C#:

    dotnet sln todo.slnx add todo-app/todo-app.csproj back-end/back-end.csproj
    
  • Odeberte z řešení několik projektů jazyka C#:

    dotnet sln todo.slnx remove todo-app/todo-app.csproj back-end/back-end.csproj
    
  • Přidejte do řešení více projektů V# pomocí vzoru globbingu (pouze unix/Linux):

    dotnet sln todo.slnx add **/*.csproj
    
  • Přidání více projektů jazyka C# do řešení pomocí vzoru globbingu (jenom Windows PowerShell):

    dotnet sln todo.slnx add (ls -r **/*.csproj)
    
  • Odeberte z řešení více projektů jazyka C# pomocí vzoru globbingu (pouze unix/Linux):

    dotnet sln todo.slnx remove **/*.csproj
    
  • Odeberte z řešení více projektů jazyka C# pomocí vzoru globbingu (jenom Windows PowerShell):

    dotnet sln todo.slnx remove (ls -r **/*.csproj)
    
  • Vygenerujte soubor .slnx ze souboru .sln:

    dotnet sln todo.sln migrate
    
  • Vytvořte řešení, konzolovou aplikaci a dvě knihovny tříd. Přidejte projekty do řešení a pomocí možnosti --solution-folderdotnet sln uspořádejte knihovny tříd do složky řešení.

    dotnet new sln -n mysolution
    dotnet new console -o myapp
    dotnet new classlib -o mylib1
    dotnet new classlib -o mylib2
    dotnet sln mysolution.slnx add myapp\myapp.csproj
    dotnet sln mysolution.slnx add mylib1\mylib1.csproj --solution-folder mylibs
    dotnet sln mysolution.slnx add mylib2\mylib2.csproj --solution-folder mylibs
    

    Následující snímek obrazovky ukazuje výsledek v průzkumníku řešení sady Visual Studio 2019 :

    Průzkumník řešení zobrazující projekty knihovny tříd seskupené do složky řešení.

Viz také