Xomega Generators
Currently Xomega.Net is geared towards the Microsoft technology stack:
- SQL Server database for the persistence layer;
- Entity Framework Core or Entity Framework 6.x for the domain model and ORM;
- Service layer in C# that can be exposed through Web API (REST) or WCF (SOAP);
- C#-based presentation layer for WPF desktop, Blazor Server web app,
and classic ASP.NET WebForms powered by our open-source Xomega Framework that helps you build robust multi-tier applications faster and with less code.
- TypeScript-based presentation layer for HTML5 Single Page Applications (SPA) powered
by our open-source XomegaJS counterpart of the Xomega Framework
for TypeScript SPAs.
Xomega comes with a set of built-in generators that can help you hit the ground running with Xomega Model Driven Development.
These generators are listed below grouped by the type of output or the layer that they generate.
Model Enhancements
This type of generators helps you quickly enrich your XML object model by importing it from
a database, or by adding new layers or aspects to the model.
- Import from Database creates an object model from your
existing SQL Server database schema.
- Full CRUD and Views allows you to quickly add configurable
Create, Update, Read, Delete and Read List operations to any object and its sub-objects in the
model, as well as to define and configure any necessary data objects and views in the model for UI generation.
- Enumerations from Database imports static enumerations
and their values into the model from existing database tables.
Discuss / Ask a Question / View FAQ.
Data Layer
These generators create an Entity Framework EDM for ORM, and produce DDL scripts that help you build or update your database
from the object model.
- EF Domain Objects generates an Entity Framework classes for domain objects,
DbContext and entity configurations using Fluent API.
- Entity Data Model generates an Entity Data Model to graphically view domain objects
on a single or multiple diagrams.
- Database Schema generates a DDL script for your database
if you start building your model from scratch.
- Database Change Script generates a rerunnable
DDL update script that will make incremental changes to your existing database to
bring it in synch with the object model.
Discuss / Ask a Question / View FAQ.
Service Layer
These generators allow you to rapidly generate service and data contracts, customizable service implementations, as well
as artifacts that help you expose your services via WCF or Web API.
Discuss / Ask a Question / View FAQ.
UI Layer - C#
These generators allow you to create UI views and any supporting classes for both ASP.NET WebForms and WPF desktop clients
following MVVM architecture.
- Xomega Data Objects generates reusable presentation data objects based on Xomega Framework,
which serve as an integral part of the view models.
- View Models generates platform independent view model classes based on Xomega Framework
that the views can be attached to.
- REST Service Clients generates C# service proxies that call REST services, and can be
registered with the DI container.
- Blazor Views generates Razor and C# code for Blazor views and the main menu structure.
- ASP.NET Views generates ASP.NET WebForms views based on the model definitions, and adds
them to the main menu in the Web.sitemap file.
- WPF Views generates XAML and C# code for WPF views and the main menu resources.
- WCF Client Configuration adds WCF endpoint configurations to the client-side config file.
Discuss / Ask a Question / View FAQ.Question / View FAQ.
UI Layer - TypeScript
These generators allow you to create
UI views and any supporting
classes for Single Page Applications using HTML and TypeScript.
- SPA Views generates HTML5 views and TypeScript view models based on the model definitions.
- XomegaJS Data Objects generates TypeScript presentation data objects based on XomegaJS
framework, which serve as an integral part of the view models.
- TS Service Contracts generates TypeScript service and data contract classes for for
RESTful API calls.
- TS Lookup Cache Loaders generates TypeScript classes for loading custom lookup cache data.
- TS Enumeration Constants generates TypeScript constants for each
enumeration item to allow referring to individual items in the client code without hardcoding the values.
Discuss / Ask a Question / View FAQ.
Static Data
These generators help you use the static enumerations defined in your model both
in runtime and design time by generating the necessary artifacts.
- Lookup Cache Loaders allows to quickly generate
loaders of the lookup cache, which is used to populate selection lists and to decode
values, from a database using the corresponding service operation.
- Enumeration Constants generates constants for each
enumeration item to allow referring to individual items in the code.
- Enumeration Data XML generates an XML file that can be
used for runtime lookups and value lists from the model enumerations.
- Enumeration Reload SQL generates a SQL script for (re)loading
enumerations into the database tables to allow using them in the database layer.
Discuss / Ask a Question / View FAQ.
Documentation Generators
These generators create customizable professional Microsoft Word technical design
documents for the system based on your Xomega model.
- Domain Model Design creates a design document
that describes domain model architecture and the full structure of each domain object
grouped by module.
- Service Model Design creates a design document
that describes service model architecture and the full structure of each service
grouped by module.
- Static Data Design creates a design document that
describes static data architecture and the full description of each enumeration grouped
by module.
- SQLXML Report generates a generic custom document
using provided template and data returned by a SQLXML query.
Discuss / Ask a Question / View FAQ.
Custom Generators
In addition to the standard generators, the Full Edition of Xomega.Net allows you
to develop your own XSLT-based generators and seamlessly integrate them into your
object model project. The list of potential custom generators can possibly include,
but is not limited to:
- Support of your choice of the ORM framework for the business layer, e.g. NHibernate.
- Documentation in a format of your choice, e.g. HTML, PDF, etc.
- Automated tests support for the object model.
Xomega technology lets you extend the default model structure to support your custom
generators. For example, to support your custom documentation generator you can
define and use your own format for the model elements documentation, such as an
HTML or a wiki format.
Discuss / Ask a Question / View FAQ.
|