Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Dit artikel is van toepassing op: ✔️ .NET 10 SDK en latere versies
Naam
dotnet project convert - Converteert een programma op basis van bestanden naar een projectprogramma.
Samenvatting
dotnet project convert <FILE> [--dry-run] [--force] [--interactive]
[-o|--output <OUTPUT_DIRECTORY>]
dotnet project convert -h|--help
Description
Met de dotnet project convert opdracht wordt een programma op basis van bestanden geconverteerd naar een projectprogramma. Met deze opdracht maakt u een nieuwe map met de naam van uw bestand, maakt u een .csproj-bestand , verplaatst u de code naar een bestand met dezelfde naam als het invoerbestand en vertaalt u alle #: instructies in MSBuild-eigenschappen en -verwijzingen.
Dit maakt de overgang naadloos, van één bestand naar een volledig functioneel, bouwbaar en uitbreidbaar project. Wanneer uw op bestanden gebaseerde app complexer wordt of als u gewoon de extra mogelijkheden wilt die zijn geboden in project-apps, kunt u deze converteren naar een standaardproject.
Conversieproces
De opdracht voert de volgende bewerkingen uit:
- Hiermee maakt u een nieuwe map met de naam van het invoerbestand (zonder extensie).
- Genereert een .csproj-bestand met de juiste SDK en eigenschappen.
- Hiermee verplaatst u de broncode naar een bestand met dezelfde naam als het invoerbestand.
- Hiermee verwijdert u
#:instructies uit de broncode. - Vertaalt
#:sdkrichtlijnen: de eerste#:sdkinstructie wordt het<Project Sdk="Sdk.Id">of<Project Sdk="Sdk.Id/version">kenmerk en eventuele aanvullende#:sdkinstructies worden<Sdk Name="Sdk.Id" />of<Sdk Name="Sdk.Id" Version="version" />elementen. - Vertaalt
#:packageinstructies naar<PackageReference>elementen in het projectbestand. - Vertaalt
#:propertyinstructies naar MSBuild-eigenschappen in het projectbestand. - Hiermee stelt u de juiste MSBuild-eigenschappen in op basis van de SDK en het gedetecteerde framework.
Arguments
FILEHet pad naar het programma op basis van bestanden dat moet worden geconverteerd. Het bestand moet een C#-bronbestand zijn (meestal met een .cs-extensie ).
Options
--dry-runBepaalt wijzigingen zonder het bestandssysteem daadwerkelijk te wijzigen. Toont wat er zou worden gemaakt of gewijzigd zonder de conversie uit te voeren.
--forceDwingt conversie, zelfs als er onjuiste instructies zijn. De opdracht mislukt standaard als er instructies worden weergegeven die niet correct kunnen worden geparseerd of geconverteerd.
-
--interactiveHiermee kan de opdracht stoppen en wachten op invoer of actie van de gebruiker. Bijvoorbeeld om de verificatie te voltooien.
-o|--output <OUTPUT_DIRECTORY>Hiermee geeft u de uitvoermap voor het geconverteerde project. Als dit niet is opgegeven, wordt er een map gemaakt met dezelfde naam als het invoerbestand (zonder extensie) in de huidige map.
-
-?|-h|--helpHiermee wordt een beschrijving afgedrukt van hoe de opdracht gebruikt moet worden.
Voorbeelden
Een programma op basis van bestanden converteren naar een project:
dotnet project convert app.csGezien een map met app.cs met de volgende inhoud:
#: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();Resultaten uitvoeren
dotnet project convert app.csin een map met de naam app met: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>Converteer een programma op basis van bestanden naar een project in een specifieke uitvoermap:
dotnet project convert app.cs --output MyProject