コード例 #1
0
ファイル: DBHonor.cs プロジェクト: wuhuolong/MaxBooks
        public DBHonorItem GetData(uint id)
        {
            DBHonorItem ad = null;

            if (data.TryGetValue(id, out ad))
            {
                return(ad);
            }

            string query  = string.Format("SELECT * FROM {0} WHERE {0}.{1}=\"{2}\"", mTableName, "id", id);
            var    reader = DBManager.Instance.ExecuteSqliteQueryToReader(GlobalConfig.DBFile, mTableName, query);

            if (reader == null)
            {
                data[id] = null;
                return(null);
            }

            if (!reader.HasRows || !reader.Read())
            {
                data[id] = null;

                reader.Close();
                reader.Dispose();
                return(null);
            }

            var ret = new DBHonorItem();

            ret.Id        = DBTextResource.ParseUI(GetReaderString(reader, "id"));
            ret.Name      = GetReaderString(reader, "name");
            ret.Icon      = GetReaderString(reader, "icon");
            ret.NeedPower = DBTextResource.ParseL(GetReaderString(reader, "need_pw"));
            ret.NeedGoods = DBTextResource.ParseDBGoodsItem(GetReaderString(reader, "need_goods"));
            ret.AddAttr   = DBTextResource.ParseDBAttrItems(GetReaderString(reader, "attr"));
            ret.Quality   = DBTextResource.ParseUI_s(GetReaderString(reader, "qual"), 0);
            data.Add(ret.Id, ret);

            reader.Close();
            reader.Dispose();

            return(ret);
        }