Condividi tramite


dotnet sln add non consente più nomi di file non validi

A partire da .NET SDK 9.0.2xx, il comando dell'interfaccia della riga di comando di dotnet sln add include il supporto per file di soluzioni con estensione slnx usando il serializzatore di vs-solutionpersistence. Di conseguenza, sono previsti lievi cambiamenti nel comportamento.

Versione introdotta

.NET SDK 9.0.2xx

Comportamento precedente

In precedenza, i progetti e le cartelle delle soluzioni potrebbero avere nomi di file di Windows non validi. Potrebbero anche avere caratteri non validi nei nomi. Inoltre, dotnet sln add non è riuscito se si è tentato di aggiungere un progetto annidato con lo stesso nome di un progetto esistente.

Nuovo comportamento

A partire da .NET SDK 9.0.2xx, i progetti e i nomi delle cartelle della soluzione:

  • Non può essere una parola DOS: NUL, CON, AUX, PRN, COM?, LPT?o CLOCK$ (dove ? è un numero qualsiasi di cifre).
  • Deve contenere al massimo 260 caratteri.
  • Non può contenere caratteri non validi, ad esempio caratteri di controllo o ?, :, \, /, *, ", ", <, >e |.

Inoltre, dotnet sln add ora avrà esito positivo se si tenta di aggiungere un progetto annidato con lo stesso nome di un progetto esistente, replicando il comportamento per i progetti non annidati. Esempio: l'aggiunta di folder/project.csproj e parent/child/project.csproj non genera un errore.

Le eccezioni contengono le stringhe correnti, ma incapsulano i messaggi di errore da vs-solutionpersistence.

Tipo di modifica che causa un'interruzione

Questa modifica è una modifica comportamentale .

Motivo della modifica

Queste modifiche sono state introdotte per la transizione al nuovo serializzatore vs-solutionpersistence.

Esaminare i nomi delle cartelle dei progetti e delle soluzioni per assicurarsi che siano conformi alle nuove restrizioni di denominazione.

API interessate

N/D