Ich habe Fehler, wenn ich mein Projekt erstelle:
%Vor%Warnung als Fehler: Der Typ von 'OthersAddresses.AddressseTypeParameter' ist nicht CLS-konform C: ... \ Units \ OthersAddresses.ascx.cs
und dieser:
%Vor%Warnung als Fehler: Der Typ von 'Global.UserInSession' ist nicht CLS-konform C: ... \ Global.asax.cs
Ich habe das Attribut [CLSCompliant(false)]
vor UserInSession
und AddresseTypeParameter
hinzugefügt und es funktioniert, aber ich würde gerne verstehen, warum es nicht CLS-konform war.
Weitere Informationen zu Klassen und enum:
Klassenbenutzer (User.cs)
%Vor%Und
enum AddressTypeEnum (Address.cs)
%Vor% Sie müssen die CLSCompliantAttribute
:
Wenn kein CLSCompliantAttribute auf ein Programmelement angewendet wird, dann standardmäßig:
- Die Assembly ist nicht CLS-kompatibel.
- Der Typ ist nur dann CLS-kompatibel, wenn sein einschließender Typ oder seine Assembly CLS-kompatibel ist.
- Das Member eines Typs ist nur dann CLS-kompatibel, wenn der Typ CLS-kompatibel ist.
Abgesehen davon müssen Sie sicherstellen, dass Ihre Assembly tatsächlich CLS-kompatibel ist.
>Hiermit wissen wir, dass "Type of 'OthersAdresses.AdressTypeParameter' nicht CLS-konform ist", nicht dass die Eigenschaften notwendigerweise sind. Sehen Sie sich die Typen an, nicht die Eigenschaften, und Sie werden wahrscheinlich herausfinden, was die Warnung verursacht.
Tags und Links .net c# cls-compliant