private void ExecuteTemplateContainer(TableInfo tableInfo, Context configContext) { if (!tableInfo.MakeApi) { return; } var pathOutput = PathOutput.PathOutputContainerApi(configContext); var pathTemplateClass = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateName.Container(tableInfo)); if (!File.Exists(pathTemplateClass)) { return; } var pathTemplateInjections = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, this._defineTemplateFolder.Define(tableInfo), DefineTemplateName.ContainerInjections(tableInfo)); var textTemplateClass = Read.AllText(tableInfo, pathTemplateClass, this._defineTemplateFolder); var TextTemplateInjections = Read.AllText(tableInfo, pathTemplateInjections, this._defineTemplateFolder); if (configContext.Module.IsNullOrEmpty()) { textTemplateClass = textTemplateClass.Replace("<#domainSource#>", configContext.ProjectName); } var classBuilder = GenericTagsTransformer(tableInfo, configContext, textTemplateClass); var classBuilderMappers = string.Empty; foreach (var item in configContext.TableInfo) { if (!string.IsNullOrEmpty(item.ClassName)) { var itemInjections = TextTemplateInjections. Replace("<#namespace#>", configContext.Namespace). Replace("<#module#>", configContext.Module.IsNullOrEmpty() ? configContext.ProjectName : configContext.Module). Replace("<#className#>", item.ClassName). Replace("<#domainSource#>", configContext.DomainSource.IsNullOrEmpty() ? configContext.ProjectName : configContext.DomainSource). Replace("<#namespaceDomainSource#>", configContext.NamespaceDomainSource); classBuilderMappers += string.Format("{0}{1}", itemInjections, System.Environment.NewLine); } } classBuilder = classBuilder.Replace("<#injections#>", classBuilderMappers); using (var stream = new HelperStream(pathOutput).GetInstance()) { stream.Write(classBuilder); } }