Поделиться через


Базовый тип <имяТипа> перечисления несовместим с CLS

Обновлен: Ноябрь 2007

Underlying type <typename> of Enum is not CLS-compliant

Тип данных, указанный для этого перечисления не является частью Спецификация CLS (CLS). Это не ошибка в компоненте, поскольку .NET Framework и Visual Basic поддерживает этот тип данных. Тем не менее другой компонент, написанный в строгом CLS-совместимом коде, может не поддерживать этот тип данных. Такой компонент может не иметь возможность успешно взаимодействовать с данным компонентом.

Следующие типы данных Visual Basic не являются CLS-совместимыми:

По умолчанию это сообщение является предупреждением. Дополнительные сведения о скрытии предупреждений или обработке предупреждений как ошибок см. в разделе Настройка предупреждений в Visual Basic.

Идентификатор ошибки: BC40032

Для исправления данной ошибки выполните следующее.

  • Если компонент взаимодействует только с другими компонентами .NET Framework, или не взаимодействует с какими-либо иными компонентами, нет необходимости изменять что-либо.

  • При взаимодействии с компонентом, не записанном для .NET Framework, возможно, будет можно определить, либо через отражение, либо из документации, поддерживает ли он этот тип данных. Если это так, нет необходимости изменять что-либо.

  • При взаимодействии с компонентом, который не поддерживает этот тип данных, необходимо заменить его ближайшим CLS-совместимым типом. Например, вместо UInteger можно использовать Integer, если не требуется значение диапазона, превышающее 2 147 483 647. Если необходим расширенный диапазон, можно заменить UInteger на Long.

  • Если производится взаимодействие с объектами автоматизации или COM-объектами, то имейте в виду, что некоторые типы имеют ширину данных, отличающуюся от ширины данных в .NET Framework . Например, в других средах uint часто является 16-битным. Если производится передача 16-разрядного аргумента такому компоненту, объявите ее в качестве UShort вместо UInteger в управляемом коде Visual Basic.

См. также

Основные понятия

Общие сведения об отражении

Написание CLS-совместимого кода

Другие ресурсы

Отражение