Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
以它的方式设置属性';s在c#类中声明_C#_.net_Class_Properties - Fatal编程技术网

以它的方式设置属性';s在c#类中声明

以它的方式设置属性';s在c#类中声明,c#,.net,class,properties,C#,.net,Class,Properties,我有一个叫做“Symbol”的类,并且有一个属性列表 Public class symbol { z_prop{get;set;} B_prop{get;set;} A_prop{get;set;} } 我已经做了一个db调用,并将数据读取器分配给这个类实例。像下面的代码 //dr is datareader object symbol symbols = new symbol(); symbols.z_prop= dr["z_pro

我有一个叫做“Symbol”的类,并且有一个属性列表

Public class symbol {
  z_prop{get;set;}
  B_prop{get;set;}
   A_prop{get;set;}
}
我已经做了一个db调用,并将数据读取器分配给这个类实例。像下面的代码

//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输出如下:

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

一切正常。但在指定读取器值后,符号属性按字母顺序排序。我希望属性按照类中声明的顺序排序。有什么建议为什么按字母顺序排列吗?

我想你的意思是,当你从调试器窗口看到symbol类时,属性是按字母顺序排列的。如果是这样的话,你就不能做任何事情,因为调试器就是这样工作的

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

检查下图:


当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());

在什么地方对齐/排序?现在更新,已排序。我的原始注释仍然有效。显示示例数据。不清楚你的意思。我已经更新了输出。没关系,但之后我将列表关联到网格视图,它以相同的顺序显示数据