public static bool InitTable_CityBuildingLevel()
        {
            g_CityBuildingLevel.Clear();
            Dictionary <int, List <object> > tmps = new Dictionary <int, List <object> >();

            if (!Tab_CityBuildingLevel.LoadTable(tmps))
            {
                return(false);
            }
            foreach (KeyValuePair <int, List <object> > kv in tmps)
            {
                List <Tab_CityBuildingLevel> values = new List <Tab_CityBuildingLevel>();
                foreach (object subit in kv.Value)
                {
                    values.Add((Tab_CityBuildingLevel)subit);
                }
                g_CityBuildingLevel.Add(kv.Key, values);
            }
            return(true);
        }
      public static void SerializableTable(string[] valuesList, int skey, Dictionary <int, List <object> > _hash)
      {
          if ((int)_ID.MAX_RECORD != valuesList.Length)
          {
              throw TableException.ErrorReader("Load {0} error as CodeSize:{1} not Equal DataSize:{2}", GetInstanceFile(), _ID.MAX_RECORD, valuesList.Length);
          }
          Tab_CityBuildingLevel _values = new Tab_CityBuildingLevel();

          _values.m_Asset            = valuesList[(int)_ID.ID_ASSET] as string;
          _values.m_BuildingType     = Convert.ToInt32(valuesList[(int)_ID.ID_BUILDINGTYPE] as string);
          _values.m_Bundle           = valuesList[(int)_ID.ID_BUNDLE] as string;
          _values.m_Description      = valuesList[(int)_ID.ID_DESCRIPTION] as string;
          _values.m_Id               = Convert.ToInt32(valuesList[(int)_ID.ID_ID] as string);
          _values.m_Level            = Convert.ToInt32(valuesList[(int)_ID.ID_LEVEL] as string);
          _values.m_Name             = valuesList[(int)_ID.ID_NAME] as string;
          _values.m_NeedBuilding [0] = Convert.ToInt32(valuesList[(int)_ID.ID_NEEDBUILDING1] as string);
          _values.m_NeedBuilding [1] = Convert.ToInt32(valuesList[(int)_ID.ID_NEEDBUILDING2] as string);
          _values.m_NeedBuilding [2] = Convert.ToInt32(valuesList[(int)_ID.ID_NEEDBUILDING3] as string);
          _values.m_NeedFood         = Convert.ToInt32(valuesList[(int)_ID.ID_NEEDFOOD] as string);
          _values.m_NeedGold         = Convert.ToInt32(valuesList[(int)_ID.ID_NEEDGOLD] as string);
          _values.m_NeedIron         = Convert.ToInt32(valuesList[(int)_ID.ID_NEEDIRON] as string);
          _values.m_NeedProsperity   = Convert.ToInt32(valuesList[(int)_ID.ID_NEEDPROSPERITY] as string);
          _values.m_NeedStone        = Convert.ToInt32(valuesList[(int)_ID.ID_NEEDSTONE] as string);
          _values.m_NeedTime         = Convert.ToInt32(valuesList[(int)_ID.ID_NEEDTIME] as string);
          _values.m_Prosperity       = Convert.ToInt32(valuesList[(int)_ID.ID_PROSPERITY] as string);

          if (_hash.ContainsKey(skey))
          {
              List <object> tList = _hash[skey];
              tList.Add(_values);
          }
          else
          {
              List <object> tList = new List <object>();
              tList.Add(_values);
              _hash.Add(skey, (List <object>)tList);
          }
      }