コード例 #1
0
        public void Profile(JobModel job)
        {
            try
            {
                // set string variables
                var dbmlPath = _scriptUtility.SetStringVariables(job.Connection, job,
                                                                 out var extendedDbmlPath,
                                                                 out var connectionString,
                                                                 out var providerTypeTableQuery,
                                                                 out var providerTypeColumnQuery);


                // Create Script to Get Tables
                _scriptUtility.CreateProfileTableScriptFile(connectionString, providerTypeTableQuery);

                // Parse Output to Model
                var baseSchema = _objectMapper.MapDbmlModel(dbmlPath).Tables; //.Tables.Where(s => s.Value.Type.ToUpper() != "VIEW");

                // Using baseSchema, Create Script to Query for Column
                _scriptUtility.CreateExtendedContextScriptFileAsync(baseSchema, connectionString, providerTypeColumnQuery);

                // Parse Output to Model
                var extendedSchema = _objectMapper.MapDbmlModel(extendedDbmlPath);

                // Map Extended Schema to Schema Model
                var schema = _objectMapper.MapSchemaModel(extendedSchema);
            }
            catch (Exception ex)
            {
            }
        }