首页
学习
活动
专区
圈层
工具
发布

建模类
EN

Stack Overflow用户
提问于 2010-07-20 14:32:04
回答 2查看 61关注 0票数 0

我尝试对情况类似的类进行建模:

代码语言:javascript
复制
public class Car
{
private List<Gratis> _gratises=new List<Gratis>();

public List<Gratis> Gratises
  {
          get { return _gratises; }
          set { _gratises= value; }
       }

public class Gratis
{
public string Name {get;set;}

public int ID {get;set;}
}

在一个地方,用户管理一系列的赠品。他可以添加、删除或编辑感恩。

在第二个模块中,用户可以管理汽车:

他可以添加或删除免费的汽车。

我的模型还好吗?

如果是,如何实现这一点?

我有datagridview和:

从数据库中获取免费汽车列表,然后获取免费汽车列表?

或者添加IsChecked字段?

Sql Server 2005。asmx和WinForms

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-07-20 15:15:22

查看M.Fowler重构方法Encapsulate Collection

另请注意,在get属性中返回只读集合:

代码语言:javascript
复制
public List<Gratis> Gratises

{ get { return _gratises.AsReadOnly();}}

票数 2
EN

Stack Overflow用户

发布于 2010-07-20 14:38:16

它看起来相当不错,有两个考虑因素:

  1. 为什么_gratises是公开的?它可以通过Gratises访问,它可能应该是私有的
  2. 如果有人完整地替换“感谢”列表,你介意吗?如果这样做,我将删除setter并添加代理到基础列表的AddGratis(Gratis)RemoveGratis(Gratis)方法。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3287562

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档