-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Stefano Mengarelli edited this page May 30, 2026
·
9 revisions
The SMCode library is born from the synthesis of 25 years of experience acquired in the development of computer applications.
Conceived as the central core of a series of libraries to support rapid application development (RAD), it concentrates all those functions relating to the most common activities such as the processing of various types of data, access to databases and application configuration.
- Multi-target support for .NET 8 and .NET Framework 4.8.
- Centralized error handling and logging (console, Debug, database) with internal error history and configurable prefixes.
- Robust file and I/O utilities via SMFile (load/save, retries, max size, path and temp management).
- Database and dataset helpers (SMDatabase, SMDataset) with exec/exec-scalar, timeout and connection modes (exclusive/keep) and DB logging.
- Application caching via SMCache (table-aware caching).
- INI configuration management with defaults and folder conventions via SMIni.
- JSON serialization/deserialization and safe conversions in SMJson.
- Template and macro engine (SMTemplates) with case-sensitive options, macro ordering and template caching.
- User, roles and organization management (SMUser, SMUsers, SMRule, SMRules) with relations and permissions.
- Email and FTP utilities through SMEmail and FTP functions.
- Utility helpers: string/format functions (Mid, ToVal, ignore-case replace), GUID handling, geo-point utilities and other helpers.
- Client-side companion smcode.js to mirror utilities in JavaScript.
- Advanced features: session UID, user PIN, simulated annealing utilities (SMMiniMax), dataset GUID/modified fields.
- Extensible logging and configuration options (separate console/debug logs, error write limits, throw-on-exception toggle).
dotnet add package SMCode