private void GenerateCatalogInformationAndSpWrappers(StoredProcedureWrapperClass spWrapper, int percentageDoneBeforeSpWrappers) { DateTime startCatalogAndSP = DateTime.Now; string catalogFile = CreateSpAndCatalogOutputFilePath(); using (StreamWriter sw = new StreamWriter(catalogFile, /*overwrite existing file*/ false, Encoding.UTF8)) { this.spAndCatalogTemplate.Run(sw, spWrapper); } string msgStatistics = string.Format(Messages.DbProjectGenerator_GeneratedCatalogAndSpClassTimeUsedX, GenUtil.GetDuration(startCatalogAndSP)); FireItemGenerated(msgStatistics, 100 - OtherCost); }
private void GenerateAllCode() { this.stopGenerator = false; FireItemGenerated(Messages.DbProjectGenerator_CodeGenerationStarted, 0); DateTime start = DateTime.Now; CreateOutputFolders(); OpenConnectionToMetaDataSource(); Table[] tables = RetrieveTableMetaData(); if (tables == null) return; StoredProcedure[] procedures = RetrieveSpMetaData(); if (procedures == null) return; CloseConnectionToMetaDataSource(); OptimizeMetaByIndexing(tables); bool multiFileTemplatesOk = GenerateCodeForSelectedTables(tables); if (!multiFileTemplatesOk) return; bool singeFileTemplatesOk = GenerateSingleFileTemplateForTables(tables); if (!singeFileTemplatesOk) return; StoredProcedureWrapperClass spWrapper = new StoredProcedureWrapperClass() { TypeTemplate = this.typeTemplate, Procedures = procedures }; GenerateCatalogInformationAndSpWrappers(spWrapper, MetaCost + EntityClassesCost); GenerateAppConfigFile(tables); string msgTotalStats = string.Format(Messages.DbProjectGenerator_CompletedTimeUsedX, GenUtil.GetDuration(start)); FireItemGenerated(msgTotalStats, 100); }