Regras de portabilidade e interoperabilidade
As regras de portabilidade dão suporte à portabilidade em diferentes plataformas. As regras de interoperabilidade dão suporte à interação com clientes COM.
Nesta seção
Regra | Descrição |
---|---|
CA1401: os P/Invokes não devem estar visíveis | Um método público ou protegido em um tipo público tem o atributo System.Runtime.InteropServices.DllImportAttribute (também implementado pela palavra-chave Declare no Visual Basic). Esses métodos não devem ser expostos. |
CA1416: validar a compatibilidade da plataforma | O uso de APIs dependentes de plataforma em um componente faz com que o código não funcione mais em todas as plataformas. |
CA1417: não usar OutAttribute em parâmetros de cadeia de caracteres para P/Invokes |
Parâmetros de cadeia de caracteres transmitidos por valor com OutAttribute podem desestabilizar o runtime quando a cadeia de caracteres é interna. |
CA1418: usar uma cadeia de caracteres de plataforma válida | O analisador de compatibilidade de plataforma requer um nome e uma versão de plataforma válidos. |
CA1419: fornecer um construtor sem parâmetros que seja tão visível quanto o tipo de contenção para tipos concretos derivados de 'System.Runtime.InteropServices.SafeHandle' | Fornecer um construtor sem parâmetros que seja tão visível quanto o tipo contido para um tipo derivado de System.Runtime.InteropServices.SafeHandle permite melhor desempenho e uso com soluções de interoperabilidade geradas pela origem. |
CA1420: propriedade, tipo ou atributo requer marshaling de runtime | O uso de recursos que exigem marshaling no runtime, quando o marshaling de runtime está desabilitado, resulta em exceções de runtime. |
CA1421: o método usa marshalling de runtime quando DisableRuntimeMarshallingAttribute é aplicado | Um método usa marshaling de runtime e o marshaling de runtime está explicitamente desabilitado. |
CA1422: validar a compatibilidade da plataforma | Não é recomendável chamar uma API de obsoleta em um determinado sistema operacional (versão) de um site de chamada acessível por meio desse sistema operacional (versão). |
Colaborar conosco no GitHub
A fonte deste conteúdo pode ser encontrada no GitHub, onde você também pode criar e revisar problemas e solicitações de pull. Para obter mais informações, confira o nosso guia para colaboradores.