比如有一个表,products,有以下几个字段:
product_id int,
product_name varchar(50)为这个表定义实体类,下面两个哪个好:
class Product
{
    private int _id;
    private string name;    public int ID
    {
        get{...}set{...}
    }
    public int Name
    {
        get{...}set{...}
    }
}
struct Product
{
    private int _id;
    private string name;    public int ID
    {
        get{...}set{...}
    }
    public int Name
    {
        get{...}set{...}
    }
}

解决方案 »

  1.   

    数据量小的话 struct 吧他们分别在堆栈和托管堆里边。struct 快一些,但是占用的是速度快的内存区域,具体还是看MSDN吧。
      

  2.   

    1、类型的最基本的职责是存储数据吗?
    2、它的属性上有定义完整的公共接口来访问或者修改数据成员吗?
    3、我对类型决不会有子类自信吗?
    4、我对类型决不会有多态性自信吗?上面是 <Effective C#>里的
    如果只是存储数据,不设计继承,多态,可以用Struct
      

  3.   

    我觉得用class好。因为struct 是值类型的,数据实体类免不了要传来传去的。哪个开销可就大了。。
      

  4.   


    按这4条,肯定选 struct,但我看一些代码,好像都是类,
    有的是用 DataRow 充当实体类,也有自定义实体类的,
    用的是 class 不是 struct。
      

  5.   


    好像不用太担心这个,除非这个 struct 内部有很多值类型的字段。
      

  6.   

    我们一般都使用Class
    ....................
      

  7.   

    其实用哪个都很好,只要注意他们在使用上的差别就是了。但一般像这样的,我都用Class来表示了,这样处理上很方便
      

  8.   

    既然已经实体“类”,还struct?
      

  9.   

    肯定是class
    struct用于数据量小