Microsoft deciso di presentare un nuovo formato XML per i file di soluzione in Visual Studio, cioè le strutture per l'organizzazione dei progetti. L'idea è quella di sostituire il tradizionale formato testuale utilizzato per decenni. Ciò con lo scopo di rendere i file più semplici da gestire e di ridurre quanto più possibile i conflitti durante le operazioni di merge in contesti collaborativi.
Il nuovo formato SLNX come alternativa ad XML
I file di soluzione (.SLN) rappresentano da sempre un punto debole nella gestione dei progetti Visual Studio. Questo in particolare per la loro scarsa leggibilità e per l'utilizzo di GUID, gli identificatori unici globali. Inoltre, nelle situazioni in cui si riscontra la corruzione dei file, può diventare molto complicato aprire l'applicazione su cui si sta lavorando.
Il nuovo formato, che prende il nome di .SLNX
, si basa su XML ed è progettato per essere più chiaro, leggibile e coerente con le convenzioni MSBuild già utilizzate per i file di progetto Visual Studio.
Microsoft consiglia cautela nell'adozione
Nonostante i numerosi vantaggi, la migrazione dal vecchio formato .SLN
al nuovo .SLNX
potrebbe non essere totalmente indolore. Per questo ragione Microsoft suggerisce agli sviluppatori di aspettare che il formato sia più maturo prima di adottarlo nel loro lavoro. Visual Studio necessita inoltre che il supporto ad SLNX venga abilitato esplicitamente, altrimenti l'applicazione non sarà in grado di aprire soluzioni nel nuovo formato.
Nello stesso modo, strumenti ed estensioni di terze parti potrebbero non essere compatibili con .SLNX
. Durante la fase di transizione, la presenza contemporanea di file .SLN
ed .SLNX
nello stesso repository potrebbe rivelarsi però inevitabile anche se sconsigliata. Visual Studio non sincronizza automaticamente questi due tipi di file anche se esistono strumenti per facilitare tale operazione.
Microsoft sottolineato inoltre che il gestore pacchetti NuGet non supporta ancora del tutto il nuovo formato anche se sarebbe stato previsto un aggiornamento a breve termine per la risoluzione del problema. Gli sviluppatori .NET non legati a Visual Studio possono utilizzare la versione più recente del .NET SDK che include strumenti per facilitare la migrazione.