SYSLIB0038: SerializationFormat.Binary устарел

SerializationFormat.Binary помечен как устаревший, начиная с .NET 7. При использовании этого API во время компиляции создается предупреждение SYSLIB0038.

Обходное решение

Если используется SerializationFormat.Binaryкод, переключитесь на использование SerializationFormat.Xml или используйте другой метод сериализации.

В противном случае можно задать переключатель Switch.System.Data.AllowUnsafeSerializationFormatBinaryAppContext . Этот параметр позволяет разрешить использование SerializationFormat.Binaryкода таким образом, чтобы код работал как раньше. Однако этот параметр будет удален в .NET 8. Сведения о настройке переключателя см. в разделе AppContext для потребителей библиотеки.

Отключение предупреждений

Если необходимо использовать устаревшие API, вы можете отключить предупреждение в коде или в файле проекта.

Чтобы отключить только одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить предупреждение.

// Disable the warning.
#pragma warning disable SYSLIB0038

// Code that uses obsolete API.
// ...

// Re-enable the warning.
#pragma warning restore SYSLIB0038

Чтобы отключить все SYSLIB0038 предупреждения в проекте, добавьте <NoWarn> свойство в файл проекта.

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
   ...
   <NoWarn>$(NoWarn);SYSLIB0038</NoWarn>
  </PropertyGroup>
</Project>

Дополнительные сведения см. в разделе Отключение предупреждений.

См. также