The program contains the CLSCompliantAttribute attribute, and the compiler has detected a data type definition that is not Common Language Specification (CLS) compliant. Some possible causes of this error are:
The type name is not CLS compliant. CLS compliant names cannot start with an underscore (_), contain a dollar sign ($), or differ only in capitalization from the name of another public member.
An enumeration is defined to have an underlying type that is not a CLS compliant type. For example, an enumeration may be based on the primitive type uint (which is not CLS compliant) instead of the corresponding CLS compliant system type System.UInt32.
To correct this error
Make sure that the data type name does not start with an underscore (_), contain a dollar sign ($), or differ only in capitalization from the name of another member.
Make sure that only CLS compliant data types are used as the underlying types for enumerations.