¿Cómo puedo desactivar la compatibilidad con CLS comprobación usando C #
-
27-09-2019 - |
Pregunta
¿Cómo puedo desactivar la comprobación de compatibilidad con CLS?
¿Cómo puedo hacerlo para:
- Todo el conjunto
- Un menor alcance, tal vez un archivo o una clase ...
Solución
Se puede utilizar el atributo CLSCompliant para marcar explícitamente un conjunto o tipo, por ejemplo.
Para un montaje, añadir la siguiente línea en AssemblyInfo.cs
[assembly: CLSCompliant(false)]
Para una clase
[CLSCompliant(false)]
public class Foo
{
}
También se puede utilizar para los miembros de tipo específico (métodos, propiedades, etc.) de una manera similar.
Otros consejos
Se puede utilizar el atributo [CLSCompliant(false)]
.
Presupuesto de la doc:
Se puede aplicar el CLSCompliantAttribute atributo a la siguiente elementos de programa: el montaje, módulo, clase, estructura, enumeración, constructor, método, una propiedad de campo, evento, interfaz, delegado, parámetro, y el valor de retorno. Sin embargo, la noción CLS de cumplimiento sólo es significativa para montajes, módulos, tipos, y miembros de tipos, no partes de una firma miembro. Por consiguiente, CLSCompliantAttribute se ignora cuando aplicada al parámetro o valor de retorno elementos del programa.
También hay posibilidad de -supress compilador advertencias .