You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 22
Next »
Framework on Framework Architecture
FrameworX is literally a framework built on top of the .NET Framework. This isn't just using .NET programming languages, it's total integration where platform objects like DateTime tags are actual .NET DateTime objects. This deep integration enables features impossible with traditional SCADA scripting engines.
Multi-platform Deployment Options
Framework | Platforms | When to Use |
---|
.NET Framework 4.8 | Windows only | • Pre-installed on all Windows • Legacy library compatibility • No additional installation needed |
.NET 8 | Windows, Linux | • Better performance and memory usage • Cross-platform deployment • Modern framework features |
Docker | Any with Docker | • Container orchestration • Microservices architecture • Cloud deployment |
Choose .NET 8 as default unless you need specific .NET 4.8 libraries or zero-installation Windows deployment.
100% Managed Code Benefits
Being entirely managed code provides industrial-grade reliability:
- Intrinsically safe software - Cannot cause system crashes or memory corruption
- Automatic memory management - No memory leaks from user code
- Process isolation - Scripts run in separate application domains
- 24/7 operation - Garbage collection without stopping the system
This architecture prevents the cascading failures common with native code in industrial systems.
Dynamic Assembly Generation
The built-in code editor doesn't just compile scripts—it creates new .NET assemblies on the fly:
- Runtime component creation - Generate new functionality without restarting
- AI integration capability - MCP tools can create custom methods dynamically
- Solution-level customization - Extend the platform using only built-in tools
- No external dependencies - Complete compiler toolchain included
This unique capability enables advanced features like AI-generated configurations and runtime optimization that would be impossible with traditional scripting.
Native .NET Objects Throughout
Every project element is a native .NET object accessible via IntelliSense:
- Tags, alarms, and datasets as first-class objects
- No temporary variables or type conversions
- Direct data movement between tags and DataTables
- Full object model exposed to scripts
See for the complete object hierarchy.
Execution Model
Server-Client Separation
The platform automatically manages execution distribution:
- Server-side - Global logic, data processing, device communication
- Client-side - UI interactions, local calculations, display logic
Developers create sophisticated applications without managing this complexity—the platform handles it transparently.
Tasks, Classes, and Expressions
- Tasks - Scheduled or event-driven processes
- Classes - Reusable .NET libraries and components
- Expressions - One-line calculations with full .NET access
Process Isolation
Each script runs in its own application domain, isolated from the real-time database for maximum security and preventing any script from affecting system stability.
Development Environment
- Languages - Industry-standard C# and VB.NET
- Code translation - Convert between languages anytime
- Full debugging - Breakpoints, step-through, watch windows
- Online changes - Modify and debug while running
- - Object model leveraging .NET types
- - In-memory database using .NET collections
- - Cross-language capabilities
- Platform Generations - Evolution of the .NET foundation
In this section...
The root page @parent could not be found in space 93Draft.