Eisen: SLN is altijd het configuratieformaat van de VS-oplossing geweest, als je de projectconfiguratie handmatig in het SLN-bestand aanpast, moet je vaak veel plaatsen aanpassen, de configuratie is stinkend en lang, Microsoft heeft dit probleem uiteindelijk ingezien en een nieuwe oplossing voor het SLNX-formaat voorgesteld, de configuratie is eenvoudig en duidelijk, hoe kan ik sln migreren naar slnx-formaat?
Oplossingsdocumenten zijn al lange tijd . .NET en Visual Studio vormen een belangrijk onderdeel van de ontwikkelervaring, en hun formaten zijn al meer dan twintig jaar grotendeels hetzelfde gebleven. Onlangs lanceerde het Visual Studio Solutions-team een nieuw XML-gebaseerd formaat, SLNX, dat tot doel heeft een schoner en moderner oplossingsbestandsformaat te bieden. Vanaf .NET SDK 9.0.200 ondersteunt dotnet CLI officieel het genereren en manipuleren van SLNX-bestanden, waardoor ontwikkelaars efficiënter oplossingen beheren.
SLNX-formaat
SLNX is een nieuw op XML gebaseerd oplossingsbestandsformaat dat aanzienlijke voordelen biedt ten opzichte van traditionele .sln bestanden. Terwijl traditionele .sln bestanden in aangepaste tekstformaat zijn en veel herhalende configuratie-informatie en GUID-referenties bevatten, gebruikt SLNX een beknopte XML-structuur die automatisch veel standaardconfiguraties verwerkt om het bestand duidelijker en makkelijker leesbaar te maken.
De voordelen van het SLNX-formaat zijn onder andere:
Kleinere bestandsvolumes Meer leesbare XML-structuur Verwerk automatisch de standaardconfiguratie Betere gebruiksvriendelijkheid voor versiebeheer De toekomstige schaalbaarheid is sterker
Deze formatconversie is geïmplementeerd dankzij de Microsoft.VisualStudio.SolutionPersistence open source bibliotheek, die een uniforme API biedt voor het verwerken van beide formaten.
SLN migreert het SLNX-formaat
Met mijn eigen oplossingConsoleApp1.slnBijvoorbeeld, zoals getoond in de onderstaande figuur:
ConsoleApp1.sln De configuratie is als volgt:
Vanaf .NET SDK 9.0.200 kunnen migraties worden uitgevoerd met de dotnet-commandoregeltool met de volgende commando's:
Dit commando leest het .sln-bestand in de huidige map en genereert het bijbehorende .slnx-bestand, terwijl het originele .sln bestand behouden blijft. Zoals hieronder getoond:
Het resulterende ConsoleApp1.slnx-bestand is zeer overzichtelijk en beknopt, en de configuratie is als volgt:
Referentie:De hyperlink-login is zichtbaar. |