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); }