Class Scaffolder
Helper class to simplify common scenario of data model generation from database.
public sealed class Scaffolder
- Inheritance
-
Scaffolder
- Extension Methods
Constructors
Scaffolder(ILanguageProvider, INameConversionProvider, ScaffoldOptions, ScaffoldInterceptors?)
Creates instance of data model codegerator from database connection.
public Scaffolder(ILanguageProvider languageProvider, INameConversionProvider nameConverter, ScaffoldOptions options, ScaffoldInterceptors? interceptors)
Parameters
languageProviderILanguageProviderLanguage provider to use for data model codegeneration.
nameConverterINameConversionProviderINameConversionProvider pluralization service implementation.
optionsScaffoldOptionsScaffolding process customization options.
interceptorsScaffoldInterceptorsOptional custom scaffold interceptors.
Properties
Language
Gets language provider, used by current instance.
public ILanguageProvider Language { get; }
Property Value
Methods
GenerateCodeModel(ISqlBuilder, DatabaseModel, IMetadataBuilder?, params ConvertCodeModelVisitor[])
Converts database model to code model (AST).
public CodeFile[] GenerateCodeModel(ISqlBuilder sqlBuilder, DatabaseModel dataModel, IMetadataBuilder? metadataBuilder, params ConvertCodeModelVisitor[] modelConverters)
Parameters
sqlBuilderISqlBuilderDatabase-specific ISqlBuilder instance.
dataModelDatabaseModelDatabase model.
metadataBuilderIMetadataBuilderData model metadata builder.
modelConvertersConvertCodeModelVisitor[]Optional AST post-processing converters.
Returns
- CodeFile[]
Code model as collection of code file models.
GenerateSourceCode(DatabaseModel, params CodeFile[])
Converts per-file code models (AST) to source code using current language (used by current instance).
public SourceCodeFile[] GenerateSourceCode(DatabaseModel dataModel, params CodeFile[] files)
Parameters
dataModelDatabaseModelData model, used for code generation.
filesCodeFile[]Code models.
Returns
- SourceCodeFile[]
Source code with file names.
LoadDataModel(ISchemaProvider, ITypeMappingProvider)
Loads database schema into DatabaseModel object.
public DatabaseModel LoadDataModel(ISchemaProvider schemaProvider, ITypeMappingProvider typeMappingsProvider)
Parameters
schemaProviderISchemaProviderDatabase schema provider.
typeMappingsProviderITypeMappingProviderDatabase types mappings provider.
Returns
- DatabaseModel
Loaded database model instance.