型別 '<typename1>' 無法標記為符合 CLS 標準,因為它的包含型別 '<typename2>' 不符合 CLS 標準

更新:2007 年 11 月

當類別或介面在標記為 <CLSCompliant(False)> 或未標記的型別中形成巢狀時,就會標記為 <CLSCompliant(True)>。

若要讓類別或介面符合 Common Language Specification (CLS) 標準,則整個內含項目階層架構都必須相容 (Compliant)。這表示在其中形成巢狀的每個型別都必須相容。

當您套用 CLSCompliantAttribute 至程式設計的項目時,您可以將 isCompliant 參數的屬性設定為 True 或 False,指示相容或不相容。這個參數沒有預設值,所以您必須提供預設值。

如果沒有將 CLSCompliantAttribute 套用至項目,會被認為是不相容。

根據預設,這是一個警告訊息。如需隱藏警告或將警告視為錯誤的詳細資訊,請參閱在 Visual Basic 中設定警告

錯誤 ID︰BC40030

若要更正這個錯誤

  • 如果需要符合 CLS 標準,請在不同的內含項目階層架構中定義此型別。

  • 如果需要此型別留在目前的內含項目階層架構中,請從它的定義中移除 CLSCompliantAttribute,或將它標記為 <CLSCompliant(False)>。

請參閱

概念

撰寫符合 CLS 標準的程式碼