Impossibile applicare 'Microsoft.VisualBasic.ComClassAttribute' a una classe generica o contenuta all'interno di un tipo generico

Aggiornamento: novembre 2007

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

È stata dichiarata una classe con l'attributo ComClassAttribute, ma si tratta di una classe generica o contenuta in una classe o una struttura generica.

Affinché risulti idonea per l'interoperabilità COM, una classe .NET Framework deve soddisfare i seguenti requisiti:

  • deve essere Public, così come tutti i relativi contenitori, e deve esporre almeno un membro Public;

  • non deve essere abstract, vale a dire, non deve essere dichiarata MustInherit;

  • non deve essere generica o dichiarata all'interno di un tipo di contenitore generico.

ID errore: BC31527

Per correggere l'errore

  • Modificare la dichiarazione della classe in modo che non sia generica e accertarsi che l'elemento che la contiene non sia generico.

    -oppure-

  • Se è necessario che la classe o l'elemento che la contiene sia generico, rimuovere l'oggetto ComClassAttribute dalla dichiarazione della classe. Non è possibile esporlo in COM.

Vedere anche

Concetti

Tipi generici in Visual Basic

Riferimenti

ComClassAttribute

Altre risorse

Interoperabilità COM