dotnet sln add
ya no permite nombres de archivo no válidos
A partir del SDK de .NET 9.0.2xx, el comando de la CLI dotnet sln add
incluye compatibilidad con archivos de solución .slnx mediante el serializador de vs-solutionpersistence. Como resultado, se esperan pequeños cambios en el comportamiento.
Versión introducida
SDK de .NET 9.0.2xx
Comportamiento anterior
Anteriormente, los proyectos y las carpetas de soluciones podían tener nombres de archivo de Windows no válidos. También podrían tener caracteres no válidos en sus nombres. Además, dotnet sln add
fallaba si intentabas agregar un subproyecto con el mismo nombre que un proyecto existente.
Nuevo comportamiento
A partir del SDK de .NET 9.0.2xx, los proyectos y los nombres de las carpetas de las soluciones:
- No puede ser una palabra de DOS:
NUL
,CON
,AUX
,PRN
,COM?
,LPT?
oCLOCK$
(donde?
es cualquier número de dígitos). - Debe tener 260 caracteres o menos.
- No se pueden contener caracteres no válidos, como caracteres de control o
?
,:
,\
,/
,*
,"
,"
,<
,>
y|
.
Además, dotnet sln add
ahora tiene se ejecuta correctamente si intenta agregar un proyecto anidado con el mismo nombre que un proyecto existente, lo que refleja el comportamiento de los proyectos no anidados. Ejemplo: Agregar folder/project.csproj
y parent/child/project.csproj
no produce un error.
Las excepciones contienen las cadenas actuales, pero encapsulan los mensajes de error de vs-solutionpersistence.
Tipo de cambio importante
Este cambio es un cambio de comportamiento .
Motivo del cambio
Estos cambios se introdujeron para realizar la transición al nuevo serializador de vs-solutionpersistence
.
Acción recomendada
Revise los nombres de las carpetas de proyectos y soluciones para asegurarse de que cumplen las nuevas restricciones de nomenclatura.
APIs afectadas
N/A