SYSLIB0042: Zastaralé typy FromXmlString a ToXmlString u typů ECC
ToXmlString
Typy FromXmlString
kryptografie (ECC) se třemi tečkami a metody jsou zastaralé, počínaje rozhraním .NET 7. Použití v kódu generuje upozornění SYSLIB0042
v době kompilace. Nikdy nebyly implementovány a vždy vyvolaly PlatformNotSupportedException výjimku. Obsoletion ovlivňuje následující metody:
- ECDiffieHellmanCng.FromXmlString(String, ECKeyXmlFormat)
- ECDiffieHellmanCng.ToXmlString(ECKeyXmlFormat)
- ECDiffieHellmanCngPublicKey.FromXmlString(String)
- ECDiffieHellmanCngPublicKey.ToXmlString()
- ECDiffieHellmanPublicKey.ToXmlString()
- ECDsaCng.FromXmlString(String, ECKeyXmlFormat)
- ECDsaCng.ToXmlString(ECKeyXmlFormat)
Alternativní řešení
Pro výměnu klíčů se třemi tečkami (EC) použijte standardní formát dat.
ToXmlString
Místo , použijte ExportSubjectPublicKeyInfo
nebo ExportPkcs8PrivateKey
v závislosti na tom, jestli chcete veřejný nebo privátní klíč.
FromXmlString
Místo , použijte ImportSubjectPublicKeyInfo
nebo ImportPkcs8PrivateKey
v závislosti na tom, jestli chcete importovat veřejný nebo privátní klíč.
Potlačení upozornění
Pokud musíte použít zastaralá rozhraní API, můžete potlačit upozornění v kódu nebo v souboru projektu.
Chcete-li potlačit pouze jedno porušení, přidejte do zdrojového souboru direktivy preprocesoru, které chcete zakázat a znovu povolit upozornění.
// Disable the warning.
#pragma warning disable SYSLIB0042
// Code that uses obsolete API.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB0042
Pokud chcete potlačit všechna SYSLIB0042
upozornění v projektu, přidejte <NoWarn>
do souboru projektu vlastnost.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<NoWarn>$(NoWarn);SYSLIB0042</NoWarn>
</PropertyGroup>
</Project>
Další informace naleznete v tématu Potlačení upozornění.