Serializacja binaryFormatter niestandardowych elementów BuildEventArgs i ITaskItems usuniętych dla platformy .NET 7
Program MSBuild na platformie .NET 7 nie obsługuje serializacji niestandardowych BuildEventArgs
typów pochodnych i ITaskItem
pochodnych za pośrednictwem serializatora BinaryFormatter
.
Wprowadzona wersja
MSBuild 17.4 (.NET SDK 7.0.100)
Stare zachowanie
Program MSBuild używał klasy BinaryFormatter do zachowania typów niestandardowych pochodzących z elementów BuildEventArgs i ITaskItem w określonych granicach, zwłaszcza w przypadku uruchamiania w środowisku wieloprocesowym.
Nowe zachowanie
Program MSBuild nie będzie już obsługiwać tego mechanizmu, więc kod, który używał typów niestandardowych pochodzących z elementów BuildEventArgs i ITaskItem, może zakończyć się niepowodzeniem.
Przyczyna wprowadzenia zmiany
BinaryFormatter został przestarzały na platformie .NET 5. Zgodnie z tym planem cały kod pierwszej firmy w organizacji dotnet GitHub musi zostać zmigrowany z dala od użycia przez platformę .NET 7. Ta zmiana ma wpływ na funkcje uwidocznione przez użytkownika w programie MSBuild.
Zalecana akcja
Skontaktuj się z zespołem MSBuild w tej dyskusji w witrynie GitHub na temat konkretnych przypadków użycia i sposobu migracji z dala od
TranslateDotNet
mechanizmu.Unikaj zwracania niestandardowych typów pochodnych z zadań lub rejestrowania.