CLS-несовместимый <имяЧлена> не допускается в CLS-совместимом интерфейсе
Обновлен: Ноябрь 2007
Non-CLS-compliant <membername> is not allowed in a CLS-compliant interface
Свойство, процедура или событие в интерфейсе помечены как <CLSCompliant(True)>, тогда как сам интерфейс помечен как <CLSCompliant(False)> или не помечен вовсе.
Чтобы интерфейс был совместим с Спецификация CLS (CLS), все его члены должны быть совместимыми.
При применении CLSCompliantAttribute к программному элементу параметру isCompliant атрибута присваивается значение True или False, чтобы указать соответствие или несоответствие. Значение по умолчанию для этого параметра отсутствует, поэтому значение необходимо указать.
Если к элементу не применяется атрибут CLSCompliantAttribute, элемент считается несовместимым.
По умолчанию это сообщение является предупреждением. Дополнительные сведения о скрытии предупреждений или обработке предупреждений в качестве ошибок см. в разделе Настройка предупреждений в Visual Basic.
Идентификатор ошибки: BC40033
Исправление этой ошибки
Если необходима CLS-совместимость и имеется контроль над всем исходным кодом интерфейса, пометьте интерфейс как <CLSCompliant(True)>, если все его члены являются совместимыми.
Если требуется CLS-совместимость и нет контроля над всем исходным кодом интерфейса, или он не определен как совместимый, определите этот член внутри другого интерфейса.
Если требуется, чтобы этот член оставался в текущем интерфейсе, удалите CLSCompliantAttribute из его определения или пометьте его как <CLSCompliant(False)>.
См. также
Основные понятия
Написание CLS-совместимого кода