SYSLIB0038: Parametr SerializationFormat.Binary jest przestarzały
SerializationFormat.Binary jest oznaczony jako przestarzały, począwszy od platformy .NET 7. Użycie tego interfejsu API w kodzie generuje ostrzeżenie SYSLIB0038
w czasie kompilacji.
Rozwiązanie
Jeśli kod używa SerializationFormat.Binarymetody , przełącz się do używania SerializationFormat.Xml lub użyj innej metody serializacji.
W przeciwnym razie można ustawić Switch.System.Data.AllowUnsafeSerializationFormatBinary
AppContext przełącznik. Ten przełącznik pozwala wyrazić zgodę na korzystanie z SerializationFormat.Binaryprogramu , aby kod mógł działać tak jak poprzednio. Jednak ten przełącznik zostanie usunięty na platformie .NET 8. Aby uzyskać informacje na temat ustawiania przełącznika, zobacz AppContext dla użytkowników biblioteki.
Pomijanie ostrzeżenia
Jeśli musisz używać przestarzałych interfejsów API, możesz pominąć ostrzeżenie w kodzie lub w pliku projektu.
Aby pominąć tylko jedno naruszenie, dodaj dyrektywy preprocesora do pliku źródłowego, aby wyłączyć, a następnie ponownie włączyć ostrzeżenie.
// Disable the warning.
#pragma warning disable SYSLIB0038
// Code that uses obsolete API.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB0038
Aby pominąć wszystkie SYSLIB0038
ostrzeżenia w projekcie, dodaj <NoWarn>
właściwość do pliku projektu.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<NoWarn>$(NoWarn);SYSLIB0038</NoWarn>
</PropertyGroup>
</Project>
Aby uzyskać więcej informacji, zobacz Pomijanie ostrzeżeń.