從 .NET 5 開始,以下 API 标記為已過時。 使用這些 API 會在編譯時生成警告 SYSLIB0009,并在運作時引發 PlatformNotSupportedException。
AuthenticationManager.Authenticate
AuthenticationManager.PreAuthenticate
解決方法
實作 IAuthenticationModule,其中具有先前由 AuthenticationManager.Authenticate 調用的方法。
禁止顯示警告
建議盡可能使用可用的解決方法。 但是,如果無法更改代碼,可以通過 #pragma 指令或 <NoWarn> 項目設定來禁止顯示警告。 如果必須使用過時 API,并且 SYSLIB0XXX 診斷沒有顯示為錯誤,則可以在代碼或項目檔案中取消該警告。
若要禁止顯示代碼中的警告,請執行以下操作:
// Disable the warning.
#pragma warning disable SYSLIB0001
// Code that uses obsolete API.
//...
// Re-enable the warning.
#pragma warning restore SYSLIB0001
若要禁止顯示項目檔案中的警告,請執行以下操作:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<!-- NoWarn below suppresses SYSLIB0001 project-wide -->
<NoWarn>