Type de base n'est pas conforme CLS, quelles sont les raisons de cet avertissement?

StackOverflow https://stackoverflow.com/questions/4013087

  •  26-09-2019
  •  | 
  •  

Question

Je suis d'avertissement du sujet sur une de mes classes. En fait, la classe est très simple, il suffit de mon qu'héritier type de base générique. Aussi j'ai d'autres héritiers de cette classe générique à travers la solution, et il n'y a pas de tels avertissements.

Quelle pourrait être la raison (s) de cela? Compilateur ne donne pas d'indices de pourquoi le type de base ne sont pas conformes CLS

Était-ce utile?

La solution

Vous avez probablement [assembly:CLSCompliant(true)] quelque part dans ce projet spécifique. Cela déclenche le compilateur de vérifier tous les types être conforme CLS. Vous pouvez remplacer ce pour un type ou une méthode ou quelque chose avec [CLSCompliant(false)].

Autres conseils

Je suppose que vous avez un type dérivé marqué comme CLSCompliant mais la base est pas.

CLS écriture de code conforme L'exemple canonique utilise un UInt32 qui ne fait pas partie de la spécification CLS (Common Language) -. Par conséquent, vous devez utiliser Int64 être conforme CLS ou supprimer l'attribut (vous déclarer non conforme CCRS)

Besoin d'un code pour identifier la ligne incriminée de code. Plus d'info sur l'erreur que vous obtenez.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top