|
|
Veröffentlicht am 11.1.2021, 11:43:49
|
|
|
|

.NET ist eine separate Sprache. Das bedeutet, dass man als Entwickler in einer der vielen Programmiersprachen für .NET entwickeln kann (z. B. C#, C++/CLI, Eiffel, F#, IronPython, IronRuby, PowerBuilder, Visual Basic, Visual COBOL und Windows PowerShell). Zugreifen Sie auf die Typen und Mitglieder von Bibliotheken, die für .NET entwickelt wurden, ohne die ursprünglich geschriebene Sprache kennen oder irgendwelche Konventionen der Originalsprache befolgen zu müssen. Wenn Sie Komponentenentwickler sind, können Ihre Komponenten von jeder .NET-App abgerufen werden, unabhängig von der Sprache.
Wenn Ihre Komponente der Spezifikation der Common Language entspricht, ist garantiert, dass sie CLS-konform ist und durch Code in einer Assembler in jeder Programmiersprache zugänglich ist, die CLS unterstützt. Sie können beim Kompilieren feststellen, ob Ihre Komponenten der Common Language-Spezifikation entsprechen, indem Sie die CLSCompliantAttribut-Funktion auf den Quellcode anwenden.
Die Common Language Specification behandelt jede CLS-Konformitätsregel, da sie für Konsumenten (Entwickler, die programmatisch auf CLS-konforme Komponenten zugreifen), Frameworks (Entwickler, die Sprachcompiler zur Erstellung CLS-kompatibler Bibliotheken verwenden) und Erweiterungen (Entwickler, die Werkzeuge wie Sprachcompiler oder Codeanalysatoren entwickeln, die CLS-konforme Komponenten erstellen) gilt. Das Programm prüft beim Kompilieren standardmäßig nicht, ob der Code den CLS-Anforderungen entspricht, aber wenn Ihr Programm öffentlich sein kann (Codeshare, Nuget-Release usw.), wird empfohlen, [assembly: CLSCompliant(true)] zu verwenden.Gib an, dass deine Bibliothek CLS-konform ist。
Betriebsmittel:
Der Hyperlink-Login ist sichtbar.
Der Hyperlink-Login ist sichtbar.
Der Hyperlink-Login ist sichtbar.
Laienhaft ausgedrückt:
Man kann Pilaf mit den Händen essen, man kann mit einem Löffel essen, es ist kein Problem, aber das Essen mit den Händen entspricht nicht den hygienischen Standards oder Normen. CLS ist eine Protokollspezifikation, obwohl die Montage keine Fehler meldet und die normale Nutzung nicht beeinflusst, aber einige Typen und Parameter des von Ihnen entwickelten Codes erfüllen nicht die Standards.
CLS verwenden
In der AssemblyInfo.cs-Datei fügen Sie folgenden Code hinzu:
Sie wird auf die gesamte Versammlung angewendet.
Wenn Sie diese Funktion nicht setzen, können Sie beim Hinzufügen dieses Features zu einem Objekt folgenden Fehler erhalten:
Da Assemblies keine CLSCompliant-Funktionen besitzen, benötigt "A.Test" keine CLSCompliant-Features Der Testcode ist wie folgt, dann neu kompiliert:
Der Typ des "A.Test" entspricht nicht CLS
Sie sehen zwei Warnungen, klicken Sie auf den Warnpunkt, um zur spezifischen Zeilennummer zu springen, was anzeigt, dass unsere Codezeile nicht der CLS-Spezifikation entspricht, und dann können Sie sie selbst korrigieren.
Wenn die Leitung nicht der CLS-Spezifikation entspricht, die Änderung aber den korrekten Betrieb des Programms beeinflusst, du aber nicht möchtest, dass VS dich warnt, kannst du folgende Eigenschaften zum Feld oder zur Klasse hinzufügen:
So wird diese Warnung nicht ausgegeben.
(Ende)
|
Vorhergehend:Entitätsrahmen-Abfrageoptimierung WITH(NOLOCK)Nächster:.NET/C#, um den aktuellen Anwendungszustand (CPU, Thread, GC) zu erhalten.
|