按照在c#类中声明的方式设置属性

时间:2014-06-09 07:06:44

标签: c# .net class properties

我有一个名为"符号"并列出了属性。

Public class symbol {
  z_prop{get;set;}
  B_prop{get;set;}
   A_prop{get;set;}
}

我已完成数据库调用并将数据读取器分配给此类实例。如下面的代码

//dr is datareader object
symbol symbols = new symbol();                       
symbols.z_prop= dr["z_prop"].ToString();
symbols.B_prop= dr["B_prop"].ToString();
symbols.A_prop= dr["A_prop"].ToString();

Gridview OutPut将是这样的:

   Columns : A_prop  B_prop  Z-Prop
   Values  : Value   Value   Value

一切正常。但在分配读取器值后,符号属性按字母顺序排序。我希望像在类中声明的那样排序属性。有什么建议为什么按字母顺序排序?。

2 个答案:

答案 0 :(得分:1)

我认为你的意思是当你从调试器窗口看到符号类时,属性按字母顺序排列。如果是这种情况,那么你就无法做任何事情,因为它是调试器的工作方式。

默认调试器将按字母顺序显示所有成员。

检查以下图片:

enter image description here

答案 1 :(得分:1)

当Visual Studio显示属性/事件列表时,它会自动对它们进行排序。 因此,您可以使用自己的构造函数,如下所示:

Public class symbol {
  z_prop{get;set;}
  B_prop{get;set;}
  A_prop{get;set;}

  Public symbol (z_prop, B_prop, A_prop)
  {
      //your code for assigning properties
  }
}

然后您可以使用以下代码分配值:

symbol symbols = new symbol(dr["z_prop"].ToString(), dr["B_prop"].ToString(), dr["A_prop"].ToString());