static public ArrayList GetTables(String dbName) { //{ "debug":1, "mode":0, "dbname":"vivobaby"} ArrayList result = new ArrayList(); NSJObject json = new NSJObject(); json.Add("debug", 0); json.Add("mode", 0); json.Add("dbname", dbName); String json_data = json.ToJson(); String context = push(json_data); JArray jArray = JArray.Parse(context); foreach (String tableName in jArray) { result.Add(tableName); } return(result); }
static public NSMySQLData GetData(String dbName, String tableName, String SQL) { //{ "debug":1, "mode":"1", "sql":"SELECT * FROM devagingtestreport", "table":"devagingtestreport"} NSMySQLData result = new NSMySQLData(); NSJObject json = new NSJObject(); json.Add("debug", 0); json.Add("mode", 1); json.Add("dbname", dbName); json.Add("table", tableName); json.Add("sql", SQL); String json_data = json.ToJson(); String context = push(json_data); Debug.WriteLine(context); JObject jObject = null; String records = null; JArray columns = null; JArray datas = null; try { jObject = JObject.Parse(context); records = (String)jObject.GetValue("records"); columns = (JArray)jObject.GetValue("columns"); datas = (JArray)jObject.GetValue("data"); } catch (Newtonsoft.Json.JsonReaderException e) { result.E = new Exception("Error:SQL Cmd"); return(result); } ArrayList colAry = new ArrayList(); foreach (String item in columns) { int num = 0; if (colAry.Contains(item)) { num = 0; while (true) { num++; if (colAry.Contains(item + num) == false) { break; } } } if (num == 0) { colAry.Add(item); } else { colAry.Add(item + num); } } ArrayList dataAry = new ArrayList(); foreach (JArray row in datas) { Dictionary <String, String> dict = new Dictionary <String, String>(); dataAry.Add(dict); for (int i = 0; i < colAry.Count; i++) { String key = (String)colAry[i]; String value = (String)row[i]; int num = 0; if (dict.Keys.Contains(key)) { num = 0; while (true) { num++; if (dict.Keys.Contains(key + num) == false) { break; } } } if (num == 0) { dict.Add(key, value); } else { dict.Add(key + num, value); } } } result.E = new Exception(""); result.Columns = colAry; result.Datas = dataAry; return(result); }