public async Task<DbSchema> BuildSchemaAsync() { if (schemaCached != null) return schemaCached; schemaCached = new DbSchema(); //read stored procs file into the schema objects list var spsFileLines = File.ReadAllLines(pathToSpFile); foreach (var line in spsFileLines) { var obj = readCsvLineAsObject(line); if (obj != null) schemaCached.Objects.Add(obj); } //read references file into the schema references list var refsFileLines = File.ReadAllLines(pathToReferencesFile); foreach (var line in refsFileLines) { var reff = readCsvLineAsReference(line); if (reff != null) schemaCached.References.Add(reff); } return schemaCached; }
public async Task<DbSchema> BuildSchemaAsync() { if (schema != null) return schema; List<DbObjectInfo> objectInfoList = null; List<DbObjectReferenceRow> referenceTable = null; //get reference table from sql using (IDbConnection conn = new SqlConnection(sqlConnString)) { objectInfoList = (await conn.QueryAsync<DbObjectInfo>(getQuery_SpData())).ToList(); referenceTable = (await conn.QueryAsync<DbObjectReferenceRow>(getQuery_SpReferenceTable())).ToList(); } //refTable complete return schema = new DbSchema { Objects = objectInfoList, References = referenceTable, }; }