Partilhar via


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

A compilação netstandard2.0 do pacote NuGet System.Security.Cryptography.Pkcs versões 9.0.0 a 9.0.2 incluiu APIs que não estão presentes no .NET Framework. Chamar essas APIs de uma biblioteca .NET Standard que é executada no .NET Framework lançará MissingMemberException. Esses membros foram incluídos por engano e foram removidos na versão 9.0.3 do pacote.

Versão introduzida

.NET 9

Comportamento anterior

Ao fazer referência à versão 9.0.0 de System.Security.Cryptography.Pkcs em um projeto destinado a netstandard2.0, a compilação terá êxito ao referenciar a propriedade CmsSigner.PrivateKey. No entanto, se a biblioteca fosse executada no .NET Framework, o acesso à propriedade acionaria um MissingMemberException.

Novo comportamento

O acesso a qualquer um dos membros removidos agora resulta em uma falha de compilação, em vez de uma falha de tempo de execução.

Tipo de mudança de rutura

Esta é uma alteração incompatível de origem .

Motivo da mudança

Os membros foram incluídos acidentalmente devido a uma mudança na forma como o pacote NuGet foi produzido. Como esses membros não podem trabalhar no .NET Framework, eles nunca devem 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