/// <summary> /// 获得扩展商品属性列表 /// </summary> /// <param name="pid">商品id</param> /// <returns></returns> public static List <ExtProductAttributeInfo> GetExtProductAttributeList(int pid) { List <ExtProductAttributeInfo> extProductAttributeList = null; if (_productnosql != null) { extProductAttributeList = _productnosql.GetExtProductAttributeList(pid); if (extProductAttributeList == null) { extProductAttributeList = new List <ExtProductAttributeInfo>(); IDataReader reader = BrnShop.Core.BSPData.RDBS.GetExtProductAttributeList(pid); while (reader.Read()) { ExtProductAttributeInfo extProductAttributeInfo = BuildExtProductAttributeFromReader(reader); extProductAttributeList.Add(extProductAttributeInfo); } reader.Close(); _productnosql.CreateExtProductAttributeList(pid, extProductAttributeList); } } else { extProductAttributeList = new List <ExtProductAttributeInfo>(); IDataReader reader = BrnShop.Core.BSPData.RDBS.GetExtProductAttributeList(pid); while (reader.Read()) { ExtProductAttributeInfo extProductAttributeInfo = BuildExtProductAttributeFromReader(reader); extProductAttributeList.Add(extProductAttributeInfo); } reader.Close(); } return(extProductAttributeList); }
/// <summary> /// 从IDataReader创建ExtProductAttributeInfo /// </summary> public static ExtProductAttributeInfo BuildExtProductAttributeFromReader(IDataReader reader) { ExtProductAttributeInfo extProductAttributeInfo = new ExtProductAttributeInfo(); extProductAttributeInfo.RecordId = TypeHelper.ObjectToInt(reader["recordid"]); extProductAttributeInfo.Pid = TypeHelper.ObjectToInt(reader["pid"]); extProductAttributeInfo.AttrId = TypeHelper.ObjectToInt(reader["attrid"]); extProductAttributeInfo.AttrValueId = TypeHelper.ObjectToInt(reader["attrvalueid"]); extProductAttributeInfo.InputValue = reader["inputvalue"].ToString(); extProductAttributeInfo.AttrValue = reader["attrvalue"].ToString(); extProductAttributeInfo.IsInput = TypeHelper.ObjectToInt(reader["isinput"]); extProductAttributeInfo.AttrName = reader["attrname"].ToString(); extProductAttributeInfo.AttrGroupId = TypeHelper.ObjectToInt(reader["attrgroupid"]); extProductAttributeInfo.AttrGroupName = reader["attrgroupname"].ToString(); return(extProductAttributeInfo); }