|
|
Publicado el 11-1-2021 11:43:49
|
|
|
|

.NET es un lenguaje separado. Esto significa que, como desarrollador, puedes desarrollar en uno de los muchos lenguajes para .NET (por ejemplo, C#, C++/CLI, Eiffel, F#, IronPython, IronRuby, PowerBuilder, Visual Basic, Visual COBOL y Windows PowerShell). Accede a los tipos y miembros de las bibliotecas desarrolladas para .NET sin tener que conocer el lenguaje en el que fueron originalmente escritas ni seguir ninguna convención del lenguaje original. Si eres desarrollador de componentes, tus componentes pueden ser accedidos por cualquier aplicación .NET, independientemente del lenguaje.
Si tu componente cumple con la especificación del lenguaje común, está garantizado que cumple con CLS y es accesible mediante código en un ensamblador escrito en cualquier lenguaje de programación que soporte CLS. Puedes determinar si tus componentes cumplen con la especificación del lenguaje común en tiempo de compilación aplicando la función CLSCompliantAttribute al código fuente.
La Especificación Común de Lenguaje analiza cada regla de cumplimiento CLS porque se aplica a consumidores (desarrolladores que acceden programáticamente a componentes compatibles con CLS), frameworks (desarrolladores que utilizan compiladores de lenguaje para crear bibliotecas compatibles con CLS) y extensores (desarrolladores que crean herramientas como compiladores de lenguaje o analizadores de código que crean componentes compatibles con CLS). El programa no comprueba si el código cumple con los requisitos de CLS por defecto al compilar, pero si tu programa puede ser público (codeshare, Nuget release, etc.), se recomienda usar [assembly: CLSCompliant(true)]Indica que tu biblioteca cumple con CLS。
Recursos:
El inicio de sesión del hipervínculo es visible.
El inicio de sesión del hipervínculo es visible.
El inicio de sesión del hipervínculo es visible.
En términos sencillos:
Puedes comer pilaf con las manos, puedes comer con cuchara, no hay problema, sin embargo, comer con las manos no cumple con los estándares ni normas higiénicas. CLS es una especificación de protocolo, aunque el ensamblador no reportará errores ni afectará al uso normal, pero algunos tipos y parámetros del código que desarrollas no cumplen con los estándares.
Uso CLS
En el archivo AssemblyInfo.cs, añade el siguiente código:
Se aplicará a toda la asamblea.
Si no configuras esta función, puedes recibir el siguiente error al añadirla a un objeto:
Dado que los ensamblajes no tienen características compatibles con CLSC, "A.Test" no requiere características compatibles con CLSC El código de prueba es el siguiente, luego recompilar:
El tipo de "A.Test" no cumple con CLS
Puedes ver dos advertencias, haz clic en el elemento de advertencia para saltar al número de línea específico, indicando que nuestra línea de código no cumple con la especificación CLS, y entonces puedes corregirlo tú mismo.
Si la línea no cumple con la especificación CLS, pero la modificación afectará al correcto funcionamiento del programa, aunque no quieres que VS te advierta, puedes añadir las siguientes características al campo o clase:
De este modo, esta advertencia no se emitirá.
(Fin)
|
Anterior:Optimización de consultas del Entity Framework WITH(NOLOCK)Próximo:.NET/C# para obtener el estado actual de la aplicación (CPU, hilo, GC)
|