📄️ Primeros pasos con módulos
Un módulo es una unidad de funcionalidad opcional que se acopla al núcleo de Crono sin tocar su código: facturación electrónica, integración con RENIEC, respaldo externo, rutas de cobranza, etc. Cada módulo es un proyecto de biblioteca de clases con su propio manifiesto, su registro de servicios y sus rutinas de instalación/desinstalación.
📄️ Controladores y ViewComponents
Un módulo con interfaz de backend expone sus pantallas mediante controladores MVC y, para fragmentos reutilizables, ViewComponents. Crono aporta controladores base que ya traen resueltos la localización, el registro, el acceso a los servicios comunes y las notificaciones, de modo que el controlador del módulo se centra en su lógica.
📄️ Filtros
Los filtros de acción de ASP.NET Core permiten ejecutar código antes o después de una acción o de su resultado, de forma transversal: comprobar una condición, inyectar contenido en el HTML de respuesta, medir tiempos, etc. Un módulo puede aportar sus propios filtros y aplicarlos de forma global o acotada a ciertos controladores/acciones.
📄️ Localización de módulos
Cada módulo trae sus propios textos (nombres, etiquetas, menús, permisos, mensajes) como recursos de idioma en archivos XML. Al instalar el módulo, esos recursos se importan a la base de datos; al desinstalarlo, se eliminan. En tiempo de ejecución se consultan por el sistema de localización del núcleo (ver Localización).
📄️ Módulos licenciables
El licenciamiento de módulos es una función del framework de referencia orientada a un mercado de extensiones comerciales: permite que un módulo exija una clave de licencia válida (verificada contra un servidor central) para activarse, con periodo de gracia, estados de licencia y bloqueo del módulo si la licencia no es válida.
📄️ Despliegue de módulos
Desplegar un módulo consiste en llevar su ensamblado compilado y sus recursos (vistas, wwwroot, modulo.json, Localizacion/) a la carpeta de módulos de la aplicación, para que el catálogo de módulos lo descubra al arrancar y quede disponible para instalarse desde el backend.
🗃️ Tutoriales
7 items