public List <SchemaViewModel> List() { string[] filters = new string[this.Filters.Count]; for (int i = 0; i < Filters.Count; i++) { filters[i] = $"'{Filters[i]}'"; } List <SchemaViewModel> schemas = new List <SchemaViewModel>(); string sql = $@"SELECT schema_name FROM information_schema.schemata WHERE SCHEMA_NAME NOT IN({string.Join(",", filters)}) ORDER BY SCHEMA_NAME; "; PgSqlHelper.ExecuteDataReader(dr => { var schema = new SchemaViewModel { Name = dr[0].ToString() }; schemas.Add(schema); }, CommandType.Text, sql); foreach (var item in schemas) { Console.WriteLine("正在生成模式:{0}", item.Name); item.Tables = GetTables(item.Name); } return(schemas); }
private ExcelPackage GenerateExcel(SchemaViewModel schemaVM) { var ep = new ExcelPackage(); foreach (var item in schemaVM.Schemas) { this.CreateSheet(ep, item); } return(ep); }
public void ListSchemaSetsViewBag() { var model = new SchemaViewModel() { ConnectorId = id }; var repo = new Mock <IDataDictionaryRepo>(); repo.Setup(c => c.ListSchemaObject(id)).Returns(model); var page = new SchemaPage(repo.Object, Mock.Of <ILayoutPage>()); page.ListDbObjects(id); Assert.AreEqual(model, page.ViewBag["model"]); }
public ActionResult SchemaOrg() { var viewModel = new SchemaViewModel(); try { var Scope = _sitecoreService.GetDataSourceItem <SchemaScope>(); if (Scope != null && Scope.SchemaProperties != null) { UpdateSchemaProperties(Scope.SchemaProperties); viewModel.Scope = Scope; } } catch (Exception ex) { Log.Error(ex.Message, ex, this); } return(PartialView(viewModel)); }
public async Task <IActionResult> AddSchema([FromBody] SchemaViewModel model) { Result result = await _schemaGateaway.AddSchema(model.SchemaName, model.GroupId); return(Ok(result)); }
public FileResult DownloadCSV() { string connectionString = ConfigurationManager.ConnectionStrings["DefaultDatabase"].ConnectionString; string dbName = ConfigurationManager.AppSettings["DatabaseName"]; var model = new HomeViewModel(); var selectTables = String.Format("SELECT TABLE_SCHEMA, TABLE_NAME" + " FROM INFORMATION_SCHEMA.TABLES" + " WHERE TABLE_TYPE = 'BASE TABLE' AND TABLE_CATALOG='{0}'" + " ORDER BY TABLE_SCHEMA", dbName); using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Open(); using (SqlCommand command = new SqlCommand(selectTables, connection)) { using (SqlDataReader reader = command.ExecuteReader()) { while (reader.Read()) { model.Tables.Add(new Table { SchemaName = reader.GetString(reader.GetOrdinal("TABLE_SCHEMA")), TableName = reader.GetString(reader.GetOrdinal("TABLE_NAME")), }); } } } } var schemaVM = new SchemaViewModel(); Schema schema = null; for (int i = 0; i < model.Tables.Count; i++) { var item = model.Tables[i]; if (i == 0) { schema = new Schema { Name = item.SchemaName }; schemaVM.Schemas.Add(schema); } else { if (!schema.Name.Equals(item.SchemaName)) { schema = new Schema { Name = item.SchemaName }; schemaVM.Schemas.Add(schema); } } schema.Tables.Add(new Table { Print = item.Print, TableName = item.TableName, SchemaName = item.SchemaName }); } var excelPackage = this.GenerateExcel(schemaVM); Byte[] bin = excelPackage.GetAsByteArray(); string file = "Tables.xlsx"; return(File(bin, System.Net.Mime.MediaTypeNames.Application.Octet, file)); }