Ler em inglês

Partilhar via


Aviso do compilador (nível 2) CS3021

'type' não precisa de um atributo CLSCompliant porque o assembly não tem um atributo CLSCompliant

Esse aviso ocorre se [CLSCompliant(false)] aparecer em uma classe em um assembly que não tenha um atributo CLSCompliant de nível de assembly definido como true (ou seja, a linha [assembly: CLSCompliant(true)]). Como o assembly não está se declarando compatível com CLS, não há necessidade de nada dentro do assembly se declarar não conforme, uma vez que se presume que não está em conformidade. Para obter mais informações sobre conformidade com CLS, consulte Independência de idioma e componentes independentes de idioma.

Para se livrar desse aviso, remova o atributo ou adicione o atributo assembly level.

Exemplo

O exemplo a seguir gera CS3021:

C#
// CS3021.cs  
using System;  
// Uncomment the following line to declare the assembly CLS Compliant,  
// and avoid the warning without removing the attribute on the class.  
//[assembly: CLSCompliant(true)]  
  
// Remove the next line to avoid the warning.  
[CLSCompliant(false)]               // CS3021  
public class C  
{  
    public static void Main()  
    {  
    }  
}  

Consulte também