Partager via


dotnet sln add n’autorise plus les noms de fichiers non valides

À partir du kit de développement logiciel (SDK) .NET 9.0.2xx, la commande CLI dotnet sln add inclut la prise en charge des fichiers de solution .slnx en utilisant le sérialiseur vs-solutionpersistence. Par conséquent, de légères modifications du comportement sont attendues.

Version introduite

.NET SDK 9.0.2xx

Comportement précédent

Auparavant, les projets et les dossiers de solution pouvaient avoir des noms de fichiers Windows non valides. Ils peuvent également avoir des caractères non valides dans leurs noms. En outre, dotnet sln add a échoué si vous avez tenté d’ajouter un projet imbriqué portant le même nom qu’un projet existant.

Nouveau comportement

À partir du kit SDK .NET 9.0.2xx, concernant les noms de dossiers de projets et de solutions :

  • Ne peut pas être un mot DOS : NUL, CON, AUX, PRN, COM?, LPT?ou CLOCK$ (où ? est un nombre quelconque de chiffres).
  • Doit comporter 260 caractères ou moins.
  • Ne peut pas contenir de caractères non valides, tels que des caractères de contrôle ou des ?, :, \, /, *, ", ", <, >et |.

En outre, dotnet sln add réussit maintenant si vous tentez d’ajouter un projet imbriqué portant le même nom qu’un projet existant, ce qui imite le comportement des projets non imbriqués. Exemple : l’ajout de folder/project.csproj et de parent/child/project.csproj n’entraîne pas d’erreur.

Les exceptions contiennent les chaînes de caractères actuelles, mais encapsulent les messages d'erreur de vs-solutionpersistence.

Type de changement cassant

Ce changement est un changement comportemental .

Raison de la modification

Ces modifications ont été introduites pour passer au nouveau sérialiseur vs-solutionpersistence.

Passez en revue les noms des dossiers de projet et de solution pour vous assurer qu’ils respectent les nouvelles restrictions d’affectation de noms.

API affectées

N/A