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


Microsoft.VisualBasic.ComClassAttribute не может быть применен к универсальному или вложенному в универсальный тип классу

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

'Microsoft.VisualBasic.ComClassAttribute' cannot be applied to a class that is generic or nested inside a generic type

Класс объявлен с атрибутом ComClassAttribute, но либо является универсальным, либо содержится в универсальном классе или структуре.

Для обеспечения возможности COM-взаимодействия класс .NET Framework должен удовлетворять следующим требованиям:

  • Он должен иметь модификатор Public, все его контейнеры иметь модификатор Public и хотя бы один его член должен иметь модификатор Public.

  • Он не должен быть абстрактным, то есть не должен объявляться с модификатором MustInherit.

  • Он не должен быть универсальным или объявляться внутри типа универсального контейнера.

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

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

  • Измените объявление класса так, чтобы он не был универсальным, и убедитесь, что содержащий его элемент не является универсальным.

    –либо–

  • Если класс или содержащий его элемент должен быть универсальным, удалите из объявления класса атрибут ComClassAttribute. Класс непригоден для взаимодействия с COM.

См. также

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

Универсальные типы в Visual Basic

Ссылки

ComClassAttribute

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

COM-взаимодействие