当前位置: 代码迷 >> C# >> 面向对象编程有关问题
  详细解决方案

面向对象编程有关问题

热度:96   发布时间:2016-05-05 04:35:15.0
面向对象编程问题
比如我有一个功能需要读取商品列表,一般怎么建立对象?建一个商品的实体类,然后建立一个商品列表的类?

public class GoodsInfo
    {
        public string GoodsID { get; set; }
        public string GoodsName { get; set; }
    }
public class GoodsList
    {
        public List<GoodsInfo> GetOnlineGoodsList()
            {
                 //todo
            }
    }

如果我还需要读取商品详细信息,是单独再建一个GoodsDetail的类还是也用GoodsInfo,详细信息的内容会更多一些
------解决思路----------------------
如果GoodsList里只放个List<GoodsInfo>
那不如直接用List<GoodsInfo>来存放好了,为了这东西建立个类是干啥

至于详细信息,你要分析到底是什么样的信息啊,如果是字段不重复的,都放GoodsInfo里就好了
如果是有重复的,比如类似简历一样,个数不固定,那么可以用数组,也可以为详细信息再分别按类型建立几个实体类
------解决思路----------------------
你不是已经建立了一个 List<GoodsInfo> 类型了嘛。它解决了你所有问题。

不是非要自己写个 class xxxxx 才叫做创建类型。如果你使用泛型模板,也是创建类型。
------解决思路----------------------
GoodList没必要建对象,如果你一批商品捆绑销售,比如组合一个优惠套装,那你可以声明这样的一个优惠对象,里面包含各种商品的组合
GoodInfo本来就应该是包含具体的信息
------解决思路----------------------
名字上你可以用
GoodsDataAccess
GoodsRepository
等等

一般他们提供诸如 
ListGoods
AddGoods
UpdateGoods
DeleteGoods
等操作。