SYSLIB0042: ECC 형식의 FromXmlString 및 ToXmlString은 사용되지 않음
ECC(타원 곡선 암호화) 형식에 있는 FromXmlString
및 ToXmlString
메서드는 .NET 7부터 사용되지 않습니다. 코드에서 이러한 API를 사용하면 컴파일 시간에 SYSLIB0042
경고가 생성됩니다. 이는 구현되지 않았으며 항상 PlatformNotSupportedException 예외를 throw했습니다. 사용 중단은 다음 메서드에 영향을 줍니다.
- ECDiffieHellmanCng.FromXmlString(String, ECKeyXmlFormat)
- ECDiffieHellmanCng.ToXmlString(ECKeyXmlFormat)
- ECDiffieHellmanCngPublicKey.FromXmlString(String)
- ECDiffieHellmanCngPublicKey.ToXmlString()
- ECDiffieHellmanPublicKey.ToXmlString()
- ECDsaCng.FromXmlString(String, ECKeyXmlFormat)
- ECDsaCng.ToXmlString(ECKeyXmlFormat)
해결 방법
EC(타원 곡선) 키를 교환하는 데 표준 데이터 형식을 사용합니다.
퍼블릭 키 또는 프라이빗 키를 사용할지 여부에 따라 ToXmlString
대신 ExportSubjectPublicKeyInfo
또는 ExportPkcs8PrivateKey
를 사용합니다.
퍼블릭 키 또는 프라이빗 키를 가져올지 여부에 따라 FromXmlString
대신 ImportSubjectPublicKeyInfo
또는 ImportPkcs8PrivateKey
를 사용합니다.
경고 표시 안 함
사용되지 않는 API를 사용해야 하는 경우, 코드 또는 프로젝트 파일에서 경고를 표시하지 않을 수 있습니다.
단일 위반만 표시하지 않으려면 원본 파일에 전처리기 지시문을 추가하여 경고를 사용하지 않도록 설정한 후 다시 사용하도록 설정합니다.
// Disable the warning.
#pragma warning disable SYSLIB0042
// Code that uses obsolete API.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB0042
프로젝트에서 모든 SYSLIB0042
경고를 표시하지 않으려면 프로젝트 파일에 <NoWarn>
속성을 추가합니다.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<NoWarn>$(NoWarn);SYSLIB0042</NoWarn>
</PropertyGroup>
</Project>
자세한 내용은 경고 표시 안 함을 참조하세요.
.NET