Compartilhar via


APIs removidas de System.Security.Cryptography.Pkcs netstandard2.0

O netstandard2.0 build das System.Security.Cryptography.Pkcs versões do pacote NuGet 9.0.0 a 9.0.2 incluiu APIs que não estão presentes no .NET Framework. A chamada dessas APIs a partir de uma biblioteca .NET Standard executada no .NET Framework lançará MissingMemberException. Esses membros foram erroneamente incluídos e foram removidos na versão 9.0.3 do pacote.

Versão introduzida

.NET 9

Comportamento anterior

Ao referenciar a versão 9.0.0 de System.Security.Cryptography.Pkcs em um projeto direcionado a netstandard2.0, a compilação teria êxito ao referenciar a propriedade CmsSigner.PrivateKey. No entanto, se a biblioteca estiver sendo executada no .NET Framework, acessar a propriedade acionará um MissingMemberException.

Novo comportamento

Acessar qualquer um dos membros removidos agora resulta em uma falha de compilação, em vez de uma falha de runtime.

Tipo de mudança disruptiva

Essa é uma alteração incompatível com a fonte.

Motivo da alteração

Os membros foram incluídos acidentalmente devido a uma alteração na forma como o pacote NuGet foi produzido. Como esses membros não podem trabalhar no .NET Framework, eles nunca deveriam ter sido listados como disponíveis para o .NET Standard 2.0.

Se esses membros adicionais forem necessários, compile especificamente para um TFM que os inclua, como net8.0.

APIs afetadas