SYSLIB0056: Assembly.LoadFrom, die einen AssemblyHashAlgorithm verwendet, ist veraltet.

Die Überladung von Assembly.LoadFrom, die einen AssemblyHashAlgorithm annimmt, ist ab .Net 9 veraltet. Ihr Aufruf im Code löst zur Kompilierzeit die Warnung SYSLIB0056 aus.

Grund für das Auslaufen

Assembly.LoadFrom(String, Byte[], AssemblyHashAlgorithm) löst bedingungslos eine NotSupportedException aus. Dies ist eine schlechte Erfahrung bei der Entwicklung. Die Überladung sieht wie eine gültige API aus, solange sie verwendet wird, und sie löst zur Laufzeit aus. Wenn sie als veraltet gekennzeichnet wird, wird zur Entwurfszeit das erforderliche Signal ausgelöst, das darüber informiert, dass sie nicht verwendet werden soll.

Problemumgehung

Verwenden Sie eine Überladung von Assembly.LoadFrom, die keinen AssemblyHashAlgorithm annimmt.

Unterdrücken einer Warnung

Wenn Sie die veralteten APIs verwenden müssen, können Sie die Warnung im Code oder in Ihrer Projektdatei unterdrücken.

Um nur einen einzelnen Verstoß zu unterdrücken, fügen Sie der Quelldatei Präprozessoranweisungen hinzu, um die Warnung zu deaktivieren und dann wieder zu aktivieren.

// Disable the warning.
#pragma warning disable SYSLIB0056

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

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

Um alle SYSLIB0056-Warnungen in Ihrem Projekt zu unterdrücken, fügen Sie ihrer Projektdatei eine <NoWarn>-Eigenschaft hinzu.

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

Weitere Informationen finden Sie unter Unterdrücken von Warnungen.