閱讀英文

共用方式為


編譯器警告 (層級 2) CS3021

'type' 不需要 CLSCompliant 屬性,因為組件沒有 CLSCompliant 屬性

如果在組件層級 CLSCompliant 屬性未設為 true 的組件 (亦即,程式碼 [assembly: CLSCompliant(true)]) 中,[CLSCompliant(false)] 出現在類別上,即發生此警告。 因為組件未將它自己宣告為符合 CLS 規範,所以組件內的任何項目都不需要將它自己宣告為不符合規範,因為它是假設為不符合規範。 如需 CLS 合規性的詳細資訊,請參閱語言獨立性以及與語言無關的元件

若要移除這個警告,請移除屬性或加入組件層級屬性。

範例

下列範例會產生 CS3021:

// 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()  
    {  
    }  
}  

另請參閱