/.NetScaffolder

Simple, highly flexible scaffolding framework based on T4 Scripts

Primary LanguageC#MIT LicenseMIT

.NetScaffolder

Simple, highly flexible scaffolding framework based on T4 Scripts

.NetScaffolder generates a project from a data model by using easily extendable templates.

The default data layers consists of the following:

  • Context ( Entity Framework 6.0 / Entity Framework Core / NHibernate)
  • Entities
  • Repository Layer
  • Application Service
  • Dto

Additions and modifications are easily made to these layers.

The data model will be generated by importing data from the following sources:

  • Edmx Files ( No index data is available )
  • MySql Metadata ( Version 5.7 - Known issues with version 8)
  • Oracle Metadata
  • Sql Server Metadata
  • PostgreSQL ( Planned )
  • Extendable Custom sources

The Scaffolder Application is used to import and manage models.

Imported data is saved in a model file which is then used to generate the different layers.

An example of a generated data layer is included. Save RunGenerator.tt to cause a rebuild of the data layers.

T4 templates (DataTypes) are used to generate a layer. Packages group several of these templates together. A domain will be set to use a package to generate the required layers.

Supported Database Drivers

  • Entity Famework 6.0 ( MySql, Sql Server, Oracle, PostgreSQL )
  • Entity Framework Core 2.1 ( MySql - Pomelo Driver, Sql Server, PostgreSql )
  • NHibernate ( Mysql, Sql Server, Oracle )

Generated Project Types:

  • WebApi

Planned Project Types:

  • MVC
  • Angular
  • Xamarin

Documentation

.NetScaffolder Manual

Completed

Todo

Software Requirements

Useful Tools

Known Issues

  • Please retrieve source code by using a git clone instead of downloading the project's zip as this causes T4 security issues. We will look for work arounds at a later stage.
  • EF Migrations won't work until EF 6.3 is released as migrations don't support the new project format yet.