Udostępnij za pośrednictwem


dotnet sln add nie zezwala już na nieprawidłowe nazwy plików

Począwszy od pakietu .NET SDK 9.0.2xx, polecenie CLI dotnet sln add obejmuje obsługę plików rozwiązania .slnx z użyciem serializatora vs-solutionpersistence. W rezultacie oczekiwane są niewielkie zmiany w zachowaniu.

Wersja wprowadzona

Zestaw .NET SDK 9.0.2xx

Poprzednie zachowanie

Wcześniej projekty i foldery rozwiązań mogły mieć nieprawidłowe nazwy plików systemu Windows. Mogą również mieć nieprawidłowe znaki w swoich nazwach. Ponadto dotnet sln add zakończyło się niepowodzeniem, gdy próbowano dodać zagnieżdżony projekt o tej samej nazwie co istniejący projekt.

Nowe zachowanie

Począwszy od zestawu .NET SDK 9.0.2xx, projektów i nazw folderów rozwiązań:

  • Nie można być słowem DOS: NUL, CON, AUX, PRN, COM?, LPT?lub CLOCK$ (gdzie ? jest dowolną liczbą cyfr).
  • Musi zawierać maksymalnie 260 znaków.
  • Nie może zawierać nieprawidłowych znaków, takich jak znaki sterujące lub ?, :, \, /, *, ", ", <, >i |.

Ponadto dotnet sln add teraz osiąga sukces, jeśli próbujesz dodać zagnieżdżony projekt o takiej samej nazwie jak istniejący projekt, co naśladuje zachowanie projektów niezagnieżdżonych. Przykład: dodanie folder/project.csproj i parent/child/project.csproj nie powoduje błędu.

Wyjątki zawierają bieżące ciągi, ale zawijają komunikaty o błędach z vs-solutionpersistence.

Typ zmiany powodującej niezgodność

Ta zmiana jest zmianą behawioralną.

Przyczyna zmiany

Te zmiany zostały wprowadzone w celu przejścia do nowego serializatora vs-solutionpersistence.

Przejrzyj nazwy folderów projektów i rozwiązań, aby upewnić się, że są one zgodne z nowymi ograniczeniami nazewnictwa.

Interfejsy API, których dotyczy problem

N/A