public async Task <IActionResult> PopulateSideBarJungle() { var dbList = new List <DBPoco>(); var request = HttpHelper.ComposeWebRequestGet($"http://40.117.152.157/api/Requester/GetStructure"); var json = await HttpHelper.CallWebRequestNoSSLVerification(request); var items = JsonConvert.DeserializeObject <ExpandoObject>(json); var converToDictionaryTeste = items as IDictionary <string, object>; var fullObjectsTeste = converToDictionaryTeste["response"]; var arrayOfDatabases = JArray.FromObject(fullObjectsTeste); for (int i = 0; i < arrayOfDatabases.Count; i++) { var name = arrayOfDatabases[i]["name"]; var tables = arrayOfDatabases[i]["tables"]; var arrayOfTables = JArray.FromObject(tables); var tablesList = new List <Table>(); var dbPoco = new DBPoco { Name = name.ToString(), Tables = tablesList }; dbList.Add(dbPoco); for (int x = 0; x < arrayOfTables.Count; x++) { var nameTable = arrayOfTables[x]["name"]; var fields = arrayOfTables[x]["fields"]; var arrayOfFields = JArray.FromObject(fields); var fieldsList = new List <Field>(); var dbTable = new Table { Name = nameTable.ToString(), Fields = fieldsList }; tablesList.Add(dbTable); for (int z = 0; z < arrayOfFields.Count; z++) { var nameField = arrayOfFields[z]["name"]; var type = arrayOfFields[z]["type"]; var data = arrayOfFields[z]["data"]; var dbField = new Field { Name = nameField.ToString(), Type = type.ToString(), Data = data.ToString() }; fieldsList.Add(dbField); } } } return(Ok(dbList)); }
public async Task <IActionResult> PopulateSideBar(string id, [FromQuery] string ip) { var dbList = new List <DBPoco>(); var json = await Fetch.GetAsync($"{ip}/api/Requester/GetStructure"); var items = JsonConvert.DeserializeObject <ExpandoObject>(json); var converToDictionaryTeste = items as IDictionary <string, object>; var fullObjectsTeste = converToDictionaryTeste["response"]; var arrayOfDatabases = JArray.FromObject(fullObjectsTeste); for (int i = 0; i < arrayOfDatabases.Count; i++) { var name = arrayOfDatabases[i]["name"]; var tables = arrayOfDatabases[i]["tables"]; var arrayOfTables = JArray.FromObject(tables); var tablesList = new List <Table>(); var dbPoco = new DBPoco { Name = name.ToString(), Tables = tablesList }; dbList.Add(dbPoco); for (int x = 0; x < arrayOfTables.Count; x++) { var nameTable = arrayOfTables[x]["name"]; var fields = arrayOfTables[x]["fields"]; var arrayOfFields = JArray.FromObject(fields); var fieldsList = new List <Field>(); var dbTable = new Table { Name = nameTable.ToString(), Fields = fieldsList }; tablesList.Add(dbTable); for (int z = 0; z < arrayOfFields.Count; z++) { var nameField = arrayOfFields[z]["name"]; var type = arrayOfFields[z]["type"]; var data = arrayOfFields[z]["data"]; var dbField = new Field { Name = nameField.ToString(), Type = type.ToString(), Data = data.ToString() }; fieldsList.Add(dbField); } } } return(Ok(dbList)); }