//--------------------------------------------------------------------- public byte[] GetTableAsBytes(string table_name) { EbTableBuffer table = null; mMapTable.TryGetValue(table_name, out table); if (table == null) { } return(table.GetTableData()); }
//--------------------------------------------------------------------- public EbTableBuffer GetTable(string table_name) { EbTableBuffer table = null; mMapTable.TryGetValue(table_name, out table); if (table == null) { } return(table); }
//--------------------------------------------------------------------- public byte[] GetTableAsBytes(string table_name) { EbTableBuffer table = null; mMapTable.TryGetValue(table_name, out table); if (table == null) { EbLog.Error("EbDb.getTable() Error! not exist table,table_name=" + table_name); } return(table.GetTableData()); }
//--------------------------------------------------------------------- void _loadTable(string table_name) { string str_query_select = string.Format("SELECT * FROM {0};", table_name); try { Dictionary <int, List <DataInfo> > map_data = Sqlite.getTableData(str_query_select); if (map_data.Count <= 0) { return; } EbTableBuffer table = new EbTableBuffer(table_name); foreach (var i in map_data) { //int data_id = i.Key; //table.WriteInt(data_id); List <DataInfo> list_data_info = i.Value; foreach (var data_info in list_data_info) { object data_value = data_info.data_value; string data_name = data_info.data_name; switch (data_info.data_type) { case 1: table.WriteInt((int)data_value); break; case 2: table.WriteFloat((float)(double)data_value); break; case 3: table.WriteString((string)data_value); break; } } } table.WriteEnd(); mMapTable[table.TableName] = table; } catch (Exception e) { EbLog.Error(str_query_select + "_______" + e.ToString()); } }
//--------------------------------------------------------------------- void _loadTable(string table_name) { string str_query_select = string.Format("SELECT * FROM {0};", table_name); try { List <TbDataInfo> list_data = Sqlite.getTableData(str_query_select); if (list_data.Count <= 0) { return; } EbTableBuffer table = new EbTableBuffer(table_name); foreach (var i in list_data) { //int data_id = i.Key; //table.WriteInt(data_id); TbDataInfo d_info = i; List <DataInfo> list_data_info = d_info.ListDataInfo; foreach (var data_info in list_data_info) { object data_value = data_info.data_value; //string data_name = data_info.data_name; switch (data_info.data_type) { case 1: table.WriteInt((int)data_value); break; case 2: table.WriteFloat((float)(double)data_value); break; case 3: table.WriteString((string)data_value); break; } } } table.WriteEnd(); mMapTable[table.TableName] = table; } catch (Exception) { } }
//--------------------------------------------------------------------- public void ParseTableAllData <T>(string table_name) where T : EbData, new() { string key = typeof(T).Name; Dictionary <int, EbData> map_data = new Dictionary <int, EbData>(); MapData[key] = map_data; EbTableBuffer table = GetTable(table_name); while (!table.IsReadEnd()) { T data = new T(); data.Id = table.ReadInt(); data.load(table); map_data[data.Id] = data; } }
//--------------------------------------------------------------------- public void ParseTableFromBytes(Type t, string table_name, byte[] table_buf) { EbTableBuffer table = new EbTableBuffer(table_buf, table_name); mMapTable[table.TableName] = table; Dictionary <int, EbData> map_data = new Dictionary <int, EbData>(); MapData[t.Name] = map_data; while (!table.IsReadEnd()) { var data = (EbData)Activator.CreateInstance(t); data.Id = table.ReadInt(); data.load(table); map_data[data.Id] = data; } }
//--------------------------------------------------------------------- public void ParseTableFromBytes <T>(string table_name, byte[] table_buf) where T : EbData, new() { EbTableBuffer table = new EbTableBuffer(table_buf, table_name); mMapTable[table.TableName] = table; string key = typeof(T).Name; Dictionary <int, EbData> map_data = new Dictionary <int, EbData>(); MapData[key] = map_data; while (!table.IsReadEnd()) { T data = new T(); data.Id = table.ReadInt(); data.load(table); map_data[data.Id] = data; } }
//--------------------------------------------------------------------- public abstract void load(EbTableBuffer table_buf);