SYSLIB0037: Die AssemblyName-Member HashAlgorithm, ProcessorArchitecture und VersionCompatibility sind veraltet.
Die folgenden System.Reflection.AssemblyName-Eigenschaften sind ab .NET 7 als veraltet markiert. Die Verwendung dieser APIs generiert zur Kompilierzeit die Warnung SYSLIB0037
.
Diese Eigenschaften sind kein ordnungsgemäßer Teil einer AssemblyName-Instanz. Sie führen keinen Roundtrip durch die AssemblyName-Zeichenfolgendarstellung durch und werden vom Assemblyladeprogramm in .NET Core ignoriert.
Problemumgehung
Verwenden Sie diese Member nicht in Szenarien, in denen erwartet wurde, dass für die Werte ein Roundtrip durch die Zeichenfolgendarstellung von AssemblyName durchgeführt wird.
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 SYSLIB0037
// Code that uses obsolete API.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB0037
Um alle SYSLIB0037
-Warnungen in Ihrem Projekt zu unterdrücken, fügen Sie ihrer Projektdatei eine <NoWarn>
-Eigenschaft hinzu.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<NoWarn>$(NoWarn);SYSLIB0037</NoWarn>
</PropertyGroup>
</Project>
Weitere Informationen finden Sie unter Unterdrücken von Warnungen.