Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Sommige API's zijn gemarkeerd als verouderd, te beginnen in .NET 7. Deze belangrijke wijziging is specifiek voor API's die zijn gemarkeerd als verouderd met een aangepaste diagnostische id. Het onderdrukken van de standaard diagnostische id voor obsoletion, die is CS0618 voor de C#-compiler, onderdrukt niet de waarschuwingen die de compiler genereert wanneer deze API's worden gebruikt.
Beschrijving wijzigen
In eerdere .NET-versies kunnen deze API's zonder buildwaarschuwing worden gebruikt. In .NET 7 en latere versies produceert het gebruik van deze API's een compileertijdwaarschuwing of -fout met een aangepaste diagnostische id. Door het gebruik van aangepaste diagnostische ID's kunt u de obsoleet-waarschuwingen afzonderlijk onderdrukken in plaats van alle obsoleet-waarschuwingen in één keer te onderdrukken.
De volgende tabel bevat de aangepaste diagnostische id's en de bijbehorende waarschuwingsberichten voor verouderde API's.
| Diagnostische ID | Beschrijving | Ernstigheid |
|---|---|---|
| SYSLIB0036 |
Regex.CompileToAssembly is verouderd en wordt niet ondersteund. Gebruik RegexGeneratorAttribute in plaats daarvan met de brongenerator voor reguliere expressies. |
Waarschuwing |
| SYSLIB0037 | AssemblyName leden HashAlgorithm, ProcessorArchitectureen VersionCompatibility zijn verouderd en worden niet ondersteund. | Waarschuwing |
| SYSLIB0038 | SerializationFormat.Binary is verouderd en mag niet worden gebruikt. | Waarschuwing |
| SYSLIB0039 | TLS-versies 1.0 en 1.1 hebben bekende beveiligingsproblemen en worden niet aanbevolen. Gebruik in plaats daarvan een nieuwere TLS-versie of gebruik SslProtocols.None deze om de standaardinstellingen van het besturingssysteem uit te stellen. | Waarschuwing |
| SYSLIB0040 | EncryptionPolicy.NoEncryption en EncryptionPolicy.AllowNoEncryption vermindert de beveiliging aanzienlijk en mag niet worden gebruikt in productiecode. | Waarschuwing |
| SYSLIB0041 | Het standaard-hash-algoritme en iteratieaantallen in Rfc2898DeriveBytes constructors zijn verouderd en onveilig. Gebruik een constructor die het hash-algoritme en het aantal iteraties accepteert. | Waarschuwing |
| SYSLIB0042 |
ToXmlString en FromXmlString geen implementatie voor ECC-typen (elliptische curvecryptografie) hebben en verouderd zijn. Gebruik een standaardindeling voor importeren en exporteren, zoals ExportSubjectPublicKeyInfo of ImportSubjectPublicKeyInfo voor openbare sleutels en ExportPkcs8PrivateKey of ImportPkcs8PrivateKey voor persoonlijke sleutels. |
Waarschuwing |
| SYSLIB0043 | ECDiffieHellmanPublicKey.ToByteArray() en de bijbehorende constructor heeft geen consistente en interoperabele implementatie op alle platforms. Gebruik in plaats daarvan ECDiffieHellmanPublicKey.ExportSubjectPublicKeyInfo(). | Waarschuwing |
| SYSLIB0044 | AssemblyName.CodeBase en AssemblyName.EscapedCodeBase zijn verouderd. | Waarschuwing |
| SYSLIB0045 | Cryptografische factorymethoden die een algoritmenaam accepteren, zijn verouderd. Gebruik in plaats daarvan de parameterloze Create factorymethode voor het algoritmetype. |
Waarschuwing |
| SYSLIB0047 |
XmlSecureResolver is verouderd. Gebruik XmlResolver.ThrowingResolver in plaats daarvan om de resolutie van externe XML-resources te verbieden. |
Waarschuwing |
Geïntroduceerde versie
.NET 7
Type van brekende verandering
Deze verdoezelingen kunnen van invloed zijn op broncompatibiliteit.
Aanbevolen actie
Volg de specifieke richtlijnen voor elke diagnostische ID met behulp van de URL-link die bij de waarschuwing wordt verstrekt.
Waarschuwingen of fouten voor deze verouderde onderdelen kunnen niet worden onderdrukt met behulp van de standaard diagnostische ID voor verouderde typen of leden; gebruik in plaats daarvan de waarde voor de aangepaste diagnostische ID
SYSLIBxxxx.
Betreffende API's
SYSLIB0036
SYSLIB0037
SYSLIB0038
SYSLIB0039
SYSLIB0040
- System.Net.Security.EncryptionPolicy.AllowNoEncryption
- System.Net.Security.EncryptionPolicy.NoEncryption
SYSLIB0041
- Rfc2898DeriveBytes(String, Byte[])
- Rfc2898DeriveBytes(String, Int32)
- Rfc2898DeriveBytes(Byte[], Byte[], Int32)
- Rfc2898DeriveBytes(String, Byte[], Int32)
- Rfc2898DeriveBytes(String, Int32, Int32)
SYSLIB0042
- System.Security.Cryptography.ECDiffieHellmanCng.FromXmlString(String, ECKeyXmlFormat)
- System.Security.Cryptography.ECDiffieHellmanCng.ToXmlString(ECKeyXmlFormat)
- System.Security.Cryptography.ECDiffieHellmanCngPublicKey.FromXmlString(String)
- System.Security.Cryptography.ECDiffieHellmanCngPublicKey.ToXmlString()
- System.Security.Cryptography.ECDiffieHellmanPublicKey.ToXmlString()
- System.Security.Cryptography.ECDsaCng.FromXmlString(String, ECKeyXmlFormat)
- System.Security.Cryptography.ECDsaCng.ToXmlString(ECKeyXmlFormat)
SYSLIB0043
- System.Security.Cryptography.ECDiffieHellmanPublicKey.ToByteArray()
- ECDiffieHellmanPublicKey(Byte[])
SYSLIB0045
- System.Security.Cryptography.Aes.Create(String)
- System.Security.Cryptography.AsymmetricAlgorithm.Create(String)
- System.Security.Cryptography.DES.Create(String)
- System.Security.Cryptography.ECDiffieHellman.Create(String)
- System.Security.Cryptography.ECDsa.Create(String)
- System.Security.Cryptography.HashAlgorithm.Create(String)
- System.Security.Cryptography.KeyedHashAlgorithm.Create(String)
- System.Security.Cryptography.RandomNumberGenerator.Create(String)
- System.Security.Cryptography.RC2.Create(String)
- System.Security.Cryptography.Rijndael.Create(String)
- System.Security.Cryptography.RSA.Create(String)
- System.Security.Cryptography.SHA1.Create(String)
- System.Security.Cryptography.SHA256.Create(String)
- System.Security.Cryptography.SHA384.Create(String)
- System.Security.Cryptography.SHA512.Create(String)
- System.Security.Cryptography.SymmetricAlgorithm.Create(String)
- System.Security.Cryptography.TripleDES.Create(String)