如何在c#中获取对象的不同属性?

时间:2013-09-11 11:04:49

标签: c#

我有一个类,有一些像这样的属性:

public class Car 
    {
        public long No { get; set; }
        public string Name { get; set; }
        public int Door { get; set; }
        public Color Color { get; set; }
        public int MaxSpeed { get; set; }
        public int Price { get; set; }
    } 

(这个类是一个例子,我的真正的类比它大。)

在我的程序中,我需要从db获取此类的不同属性(每次都不是所有属性)。例如,在一个案例中,我需要某些汽车的名称颜色,在其他情况下,我需要名称价格。 我想创建支持所有差异条件的一个方法。我知道我可以使用'params''enum'创建它,但我正在研究最好的方法。谢谢

2 个答案:

答案 0 :(得分:0)

您可以在调用该属性时查询该属性。

public int Value{
      get{
         int myValue = getValue();
         return myValue;
      }
}

答案 1 :(得分:0)

尝试这样做:

public object[] GetProperties(int state)
{
 object[] temp;
 switch(state)
 {
    case(0):
    {
        temp=new object[]{Name,Color};
    }break;
    case(1):
    {
        temp=new object[]{Name,door};
    }
 }
}

之后,你知道,什么需要返回你的函数,并且很容易解析返回结果!