public void Generate(IEnumerable <ClassDefinition> classDefinitions) { var classTemplate = TemplateReader.Read("ControllerTemplate.cs.txt"); var addServiceCommands = new List <string>(); foreach (var classDefinition in classDefinitions) { var domainObjectName = classDefinition.Name; var className = domainObjectName + "Controller"; classTemplate.TypeName = className; classTemplate.Set("[[DomainObjectName]]", domainObjectName); ProjectFileWriter.WriteToProject( TargetFolderPath, "WebApi", "Controllers", classTemplate); AppendAddServiceCommands(addServiceCommands, classDefinition); } GenerateStartupFile(addServiceCommands); }
public void Generate(IEnumerable <ClassDefinition> classDefinitions) { var interfaceTemplate = TemplateReader.Read("IServiceTemplate.cs.txt"); var classTemplate = TemplateReader.Read("ServiceTemplate.cs.txt"); foreach (var classDefinition in classDefinitions) { var domainObjectName = classDefinition.Name; var className = domainObjectName + "Service"; var interfaceName = "I" + className; interfaceTemplate.TypeName = interfaceName; interfaceTemplate.Set("[[DomainObjectName]]", domainObjectName); ProjectFileWriter.WriteToProject( TargetFolderPath, "Services", null, interfaceTemplate); classTemplate.TypeName = className; classTemplate.Set("[[DomainObjectName]]", domainObjectName); ProjectFileWriter.WriteToProject( TargetFolderPath, "Services", null, classTemplate); } }
private void GenerateStartupFile(List <string> addServiceCommands) { var startupTemplate = TemplateReader.Read("StartupTemplate.cs.txt"); var startupLineSeparator = Environment.NewLine + " "; var addServiceCommandString = string.Join(startupLineSeparator, addServiceCommands); startupTemplate.TypeName = "Startup"; startupTemplate.Set("[[AddServiceCommands]]", addServiceCommandString); ProjectFileWriter.WriteToProject( TargetFolderPath, "WebApi", null, startupTemplate); }
public void Generate(IEnumerable <ClassDefinition> classDefinitions) { var template = TemplateReader.Read("ViewModelTemplate.cs.txt"); foreach (var classDefinition in classDefinitions) { var propertiesString = CreatePropertiesString(classDefinition.Properties); var viewModelClassName = classDefinition.Name + "ViewModel"; template.TypeName = viewModelClassName; template.Set("[[ClassName]]", viewModelClassName); template.Set("[[Properties]]", propertiesString); ProjectFileWriter.WriteToProject( TargetFolderPath, "ViewModels", null, template); } }
public void Generate(IEnumerable <ClassDefinition> classDefinitions) { var interfaceTemplate = TemplateReader.Read("IMapTemplate.cs.txt"); var classTemplate = TemplateReader.Read("MapTemplate.cs.txt"); foreach (var classDefinition in classDefinitions) { var domainObjectName = classDefinition.Name; var className = domainObjectName + "Map"; var interfaceName = "I" + className; interfaceTemplate.TypeName = interfaceName; interfaceTemplate.Set("[[DomainObjectName]]", domainObjectName); ProjectFileWriter.WriteToProject( TargetFolderPath, "Services", null, interfaceTemplate); classTemplate.TypeName = className; classTemplate.Set("[[DomainObjectName]]", domainObjectName); classTemplate.Set( "[[DomainToViewModelMappings]]", GenerateMappingString("domain", "viewModel", classDefinition.Properties)); classTemplate.Set( "[[ViewModelToDomainMappings]]", GenerateMappingString("viewModel", "domain", classDefinition.Properties)); ProjectFileWriter.WriteToProject( TargetFolderPath, "Services", null, classTemplate); } }