Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Un tipo genérico está marcado como <CLSCompliant(True)>
, pero una restricción en uno de sus parámetros de tipo especifica un tipo que está marcado como <CLSCompliant(False)>
, no está marcado o no cumple los requisitos porque es un tipo que no conforme.
Para que un tipo sea conforme a la Independencia del lenguaje y componentes independientes del lenguaje (CLS), solo debe usar tipos conformes a CLS. Esto se aplica también a las restricciones en los parámetros de tipo de un tipo genérico.
Los siguientes tipos de datos de Visual Basic no son conformes con CLS:
Al aplicar el atributo CLSCompliantAttribute a un elemento de programación, establezca el parámetro isCompliant
del atributo como True
o False
para indicar compatibilidad o incompatibilidad. No hay ningún valor predeterminado para este parámetro, por lo que debe proporcionar uno.
Si no aplica CLSCompliantAttribute a un elemento, se considera que no es conforme.
De forma predeterminada, este mensaje es una advertencia. Para obtener información sobre cómo ocultar las advertencias o cómo tratarlas como errores, vea Configuring Warnings in Visual Basic.
Id. de error: BC40040
Para corregir este error
Si el tipo genérico debe tomar un parámetro de tipo restringido por este tipo determinado, quite CLSCompliantAttribute. El tipo no puede ser conforme con CLS.
Si el tipo genérico debe ser conforme con CLS, cambie el tipo de esta restricción al tipo compatible con CLS más próximo. Por ejemplo, en lugar de
UInteger
, quizá pueda usarInteger
si no necesita que el intervalo de valores esté por encima de 2.147.483.647. Si necesita el intervalo extendido, puede reemplazarUInteger
porLong
.