Regras de portabilidade e interoperabilidade
As regras de portabilidade suportam a portabilidade em diferentes plataformas. As regras de interoperabilidade suportam a interação com clientes COM.
Nesta secção
Regra | Description |
---|---|
CA1401: As invocações P/Não devem estar visíveis | Um método público ou protegido num tipo público tem o atributo System.Runtime.InteropServices.DllImportAttribute (também implementado pela palavra-chave Declare no Visual Basic). Estes métodos não devem ser expostos. |
CA1416: Validar a compatibilidade da plataforma | A utilização de APIs dependentes da plataforma num componente faz com que o código deixe de funcionar em todas as plataformas. |
CA1417: Não utilizar OutAttribute em parâmetros de cadeia para P/Invokes |
Os parâmetros de cadeia transmitidos por valor com o OutAttribute podem desestabilizar o runtime se a cadeia for uma cadeia interna. |
CA1418: Utilizar uma cadeia de plataforma válida | O analisador de compatibilidade de plataformas requer um nome e uma versão de plataforma válidos. |
CA1419: forneça um construtor sem parâmetros que seja tão visível como o tipo de contenção para tipos de betão derivados de "System.Runtime.InteropServices.SafeHandle" | Fornecer um construtor sem parâmetros tão visível como o tipo de contenção de um tipo derivado permite System.Runtime.InteropServices.SafeHandle um melhor desempenho e utilização com soluções de interoperabilidade geradas pela origem. |
CA1420: propriedade, tipo ou atributo requer a triagem do runtime | A utilização de funcionalidades que requerem a triagem do runtime quando a triagem do runtime está desativada resultará em exceções de tempo de execução. |
CA1421: o método utiliza a triagem de runtime quando DisableRuntimeMarshallingAttribute é aplicado | Um método utiliza a triagem de runtime e a triagem do runtime é explicitamente desativada. |
CA1422: Validar a compatibilidade da plataforma | Não é recomendado chamar uma API obsoleta num determinado SO (versão) a partir de um site de chamada que esteja acessível a partir desse SO (versão). |
Colabore connosco no GitHub
A origem deste conteúdo pode ser encontrada no GitHub, onde também pode criar e rever problemas e pedidos Pull. Para mais informações, consulte o nosso guia do contribuidor.