BC40033:在符合 CLS 的接口中不允许出现不符合 CLS 的 <membername>

当接口本身被标记为 <CLSCompliant(False)> 或未标记时,接口中的属性、过程或事件被标记为 <CLSCompliant(True)>

要使接口符合语言独立和语言无关组件 (CLS),其所有成员都必须符合。

当将 CLSCompliantAttribute 应用到编程元素中时,需要将该特性的 isCompliant 参数设置为 TrueFalse 来指示符合或不符合性。 此参数没有默认值,必须为其提供一个值。

如果不将 CLSCompliantAttribute 应用到元素,则它将被视为不符合规范。

默认情况下,此消息是一个警告。 有关隐藏警告或将警告视为错误的信息,请参见 Configuring Warnings in Visual Basic

错误 ID:BC40033

更正此错误

  • 如果你需要 CLS 合规性并控制接口源代码,请将接口标记为 <CLSCompliant(True)>(前提是所有成员都合规)。

  • 如果你需要 CLS 符合性而不能控制接口源代码,或者不将其限制为符合规范,请在其他接口中定义此成员。

  • 如果你要求此成员保留在当前接口内,请从其定义中删除 CLSCompliantAttribute 或将其标记为 <CLSCompliant(False)>

另请参阅