Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Niektóre interfejsy API zostały oznaczone jako przestarzałe, począwszy od platformy .NET 9. Ta zmiana powodująca niezgodność jest specyficzna dla interfejsów API, które zostały oznaczone jako przestarzałe przy użyciu niestandardowego identyfikatora diagnostycznego. Pomijanie domyślnego identyfikatora diagnostycznego obsoletion, który jest CS0618 dla kompilatora języka C#, nie pomija ostrzeżeń generowanych przez kompilator podczas użycia tych interfejsów API.
Opis zmiany
W poprzednich wersjach platformy .NET te interfejsy API mogą być używane bez żadnego ostrzeżenia dotyczącego kompilacji. W wersjach .NET 9 i nowszych użycie tych interfejsów API powoduje wygenerowanie ostrzeżenia w czasie kompilacji lub błędu z niestandardowym identyfikatorem diagnostycznym. Użycie niestandardowych identyfikatorów diagnostycznych umożliwia pomijanie ostrzeżeń dotyczących obsoletion indywidualnie zamiast pomijania wszystkich ostrzeżeń dotyczących obsoletionu.
W poniższej tabeli wymieniono niestandardowe identyfikatory diagnostyczne i odpowiadające im komunikaty ostrzegawcze dla przestarzałych interfejsów API.
| Identyfikator diagnostyczny | opis | Waga błędu |
|---|---|---|
| SYSLIB0009 | AuthenticationManager nie jest obsługiwana. Metody nie będą zwracać żadnych operacji ani zgłaszać PlatformNotSupportedExceptionmetody . | Ostrzeżenie |
| SYSLIB0014 | ServicePointManager jest w pełni przestarzały. Ustawienia na ServicePointManager platformie nie mają wpływu SslStream lub HttpClient (to zachowanie nie uległo zmianie od platformy .NET 6). | Ostrzeżenie |
| SYSLIB0054 | Thread.VolatileRead i Thread.VolatileWrite są przestarzałe. Użyj polecenia Volatile.Read lub Volatile.Write zamiast tego. | Ostrzeżenie |
| SYSLIB0055 |
AdvSimd.ShiftRightLogicalRoundedNarrowingSaturate* metody z podpisanymi parametrami są przestarzałe. Zamiast tego użyj niepodpisanych przeciążeń. |
Ostrzeżenie |
| SYSLIB0056 |
Assembly.LoadFrom
AssemblyHashAlgorithm element niestandardowy jest przestarzały. Użyj przeciążeń bez elementu AssemblyHashAlgorithm. |
Ostrzeżenie |
| SYSLIB0057 |
X509Certificate2 i X509Certificate konstruktory dla zawartości binarnej i plików są przestarzałe. |
Ostrzeżenie |
Wprowadzona wersja
.NET 9
Typ zmiany powodującej niezgodność
Te obsoletions mogą mieć wpływ na zgodność źródła.
Zalecana akcja
Postępuj zgodnie z określonymi wskazówkami podanymi dla każdego identyfikatora diagnostycznego przy użyciu linku adresu URL podanego w ostrzeżeniu.
Ostrzeżenia lub błędy dla tych obsoletions nie mogą być pomijane przy użyciu standardowego identyfikatora diagnostycznego dla przestarzałych typów lub elementów członkowskich; Zamiast tego użyj niestandardowej
SYSLIBxxxxwartości identyfikatora diagnostycznego.
Dotyczy interfejsów API
SYSLIB0009
SYSLIB0014
SYSLIB0054
SYSLIB0055
- System.Runtime.Intrinsics.Arm.AdvSimd.Arm64.ShiftRightLogicalRoundedNarrowingSaturateScalar(Vector64<Int64>, Byte)
- System.Runtime.Intrinsics.Arm.AdvSimd.Arm64.ShiftRightLogicalRoundedNarrowingSaturateScalar(Vector64<Int16>, Byte)
- System.Runtime.Intrinsics.Arm.AdvSimd.Arm64.ShiftRightLogicalRoundedNarrowingSaturateScalar(Vector64<Int32>, Byte)
- System.Runtime.Intrinsics.Arm.AdvSimd.ShiftRightLogicalRoundedNarrowingSaturateLower(Vector128<Int16>, Byte)
- System.Runtime.Intrinsics.Arm.AdvSimd.ShiftRightLogicalRoundedNarrowingSaturateLower(Vector128<Int64>, Byte)
- System.Runtime.Intrinsics.Arm.AdvSimd.ShiftRightLogicalRoundedNarrowingSaturateLower(Vector128<Int32>, Byte)
- System.Runtime.Intrinsics.Arm.AdvSimd.ShiftRightLogicalRoundedNarrowingSaturateUpper(Vector64<SByte>, Vector128<Int16>, Byte)
- System.Runtime.Intrinsics.Arm.AdvSimd.ShiftRightLogicalRoundedNarrowingSaturateUpper(Vector64<Int16>, Vector128<Int32>, Byte)
- System.Runtime.Intrinsics.Arm.AdvSimd.ShiftRightLogicalRoundedNarrowingSaturateUpper(Vector64<Int32>, Vector128<Int64>, Byte)
SYSLIB0056
SYSLIB0057
- X509Certificate2(Byte[])
- X509Certificate2(ReadOnlySpan<Byte>)
- X509Certificate2(String)
- X509Certificate2(Byte[], SecureString)
- X509Certificate2(Byte[], String)
- X509Certificate2(String, SecureString)
- X509Certificate2(String, String)
- X509Certificate2(Byte[], SecureString, X509KeyStorageFlags)
- X509Certificate2(Byte[], String, X509KeyStorageFlags)
- X509Certificate2(ReadOnlySpan<Byte>, ReadOnlySpan<Char>, X509KeyStorageFlags)
- X509Certificate2(String, ReadOnlySpan<Char>, X509KeyStorageFlags)
- X509Certificate2(String, SecureString, X509KeyStorageFlags)
- X509Certificate2(String, String, X509KeyStorageFlags)
- X509Certificate(Byte[])
- X509Certificate(String)
- X509Certificate(Byte[], SecureString)
- X509Certificate(Byte[], String)
- X509Certificate(String, String, X509KeyStorageFlags)
- X509Certificate(String, SecureString)
- X509Certificate(String, String)
- X509Certificate(Byte[], SecureString, X509KeyStorageFlags)
- X509Certificate(Byte[], String, X509KeyStorageFlags)
- X509Certificate(String, SecureString, X509KeyStorageFlags)
- X509Certificate(String, String, X509KeyStorageFlags)
- Import(Byte[])
- Import(ReadOnlySpan<Byte>)
- Import(ReadOnlySpan<Byte>)
- Import(Byte[], String, X509KeyStorageFlags)
- Import(ReadOnlySpan<Byte>, ReadOnlySpan<Char>, X509KeyStorageFlags)
- Import(ReadOnlySpan<Byte>, String, X509KeyStorageFlags)
- Import(String, ReadOnlySpan<Char>, X509KeyStorageFlags)
- Import(String, String, X509KeyStorageFlags)
- CreateFromSignedFile(String)
Zobacz też
- Przestarzałości interfejsu API z niedomyślnymi identyfikatorami diagnostycznymi (.NET 10)
- Obsoletions interfejsu API z nie domyślnymi identyfikatorami diagnostycznymi (.NET 8)
- Obsoletions interfejsu API z nie domyślnymi identyfikatorami diagnostycznymi (.NET 7)
- Obsoletions interfejsu API z nie domyślnymi identyfikatorami diagnostycznymi (.NET 6)
- Obsoletions interfejsu API z nie domyślnymi identyfikatorami diagnostycznymi (.NET 5)
- Przestarzałe funkcje na platformie .NET 5+