Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento článek se vztahuje na: ✔️ .NET 10 SDK a novější verze
Název
dotnet project convert - Převede souborový program na projektový program.
Přehled
dotnet project convert <FILE> [--dry-run] [--force] [--interactive]
[-o|--output <OUTPUT_DIRECTORY>]
dotnet project convert -h|--help
Description
Příkaz dotnet project convert převede program založený na souborech na projektový program. Tento příkaz vytvoří nový adresář pojmenovaný pro váš soubor, vygeneruje soubor .csproj , přesune kód do souboru se stejným názvem jako vstupní soubor a přeloží všechny #: direktivy do vlastností a odkazů NÁSTROJE MSBuild.
Díky tomu je přechod bezproblémový z jednoho souboru do plně funkčního, sestavitelného a rozšiřitelného projektu. Když se vaše aplikace založená na souborech zvětšuje nebo jednoduše chcete, aby byly v projektových aplikacích k dispozici další funkce, můžete ji převést na standardní projekt.
Proces převodu
Příkaz provede následující operace:
- Vytvoří nový adresář pojmenovaný za vstupním souborem (bez přípony).
- Vygeneruje soubor .csproj s odpovídající sadou SDK a vlastnostmi.
- Přesune zdrojový kód do souboru se stejným názvem jako vstupní soubor.
- Odebere direktivy
#:ze zdrojového kódu. - Překládá direktivy: první
#:sdkdirektiva se stane<Project Sdk="Sdk.Id">nebo<Project Sdk="Sdk.Id/version">atributem a všechny další#:sdkdirektivy#:sdkse stanou<Sdk Name="Sdk.Id" />nebo<Sdk Name="Sdk.Id" Version="version" />prvky. - Převede direktivy na
<PackageReference>elementy#:packagev souboru projektu. - Překládá direktivy
#:propertyna vlastnosti MSBuild v souboru projektu. - Nastaví odpovídající vlastnosti NÁSTROJE MSBuild na základě zjištěné sady SDK a architektury.
Arguments
FILECesta k programu založenému na souborech, který chcete převést. Soubor musí být zdrojovým souborem jazyka C# (obvykle s příponou .cs ).
Možnosti
--dry-runUrčuje změny bez skutečné úpravy systému souborů. Zobrazuje, co by se vytvořilo nebo upravilo bez provedení převodu.
--forceVynutí převod i v případě, že existují poškozené direktivy. Ve výchozím nastavení příkaz selže, pokud narazí na direktivy, které nelze správně analyzovat nebo převést.
-
--interactiveUmožňuje příkazu zastavit a čekat na uživatelský vstup nebo akci. Například k dokončení ověřování.
-o|--output <OUTPUT_DIRECTORY>Určuje výstupní adresář pro převedený projekt. Pokud není zadaný, vytvoří se adresář se stejným názvem jako vstupní soubor (bez přípony) v aktuálním adresáři.
-
-?|-h|--helpVytiskne popis použití příkazu.
Examples
Převeďte souborový program na projekt:
dotnet project convert app.csSložka obsahující app.cs s následujícím obsahem:
#:sdk Microsoft.NET.Sdk.Web #:package Microsoft.AspNetCore.OpenApi@10.*-* var builder = WebApplication.CreateBuilder(); builder.Services.AddOpenApi(); var app = builder.Build(); app.MapGet("/", () => "Hello, world!"); app.Run();Spuštění
dotnet project convert app.csvýsledků ve složce označované jako aplikace obsahující:app/app.cs:
var builder = WebApplication.CreateBuilder(); builder.Services.AddOpenApi(); var app = builder.Build(); app.MapGet("/", () => "Hello, world!"); app.Run();app/app.csproj:
<Project Sdk="Microsoft.NET.Sdk.Web"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>net10.0</TargetFramework> <ImplicitUsings>enable</ImplicitUsings> <Nullable>enable</Nullable> <PublishAot>true</PublishAot> <PackAsTool>true</PackAsTool> </PropertyGroup> <ItemGroup> <PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="10.*-*" /> </ItemGroup> </Project>Převeďte program založený na souborech na projekt v konkrétním výstupním adresáři:
dotnet project convert app.cs --output MyProject