【问题标题】:How to read data from database and store to an array C#如何从数据库中读取数据并存储到数组 C#
【发布时间】:2018-11-02 02:23:33
【问题描述】:

我需要将结果推送到数组中才能显示在图表中。我不断得到System.Data.DataRow 而不是价值。我需要知道,存储结果的正确方法(目前我将其存储在DataTable),并将其推送到数组中。我是 c# 中的新手 ..

public void getOutstanding()
{

    SelectQueryBuilder sqbSelect;
    DataSet dsOutstanding;

    sqbSelect = new SelectQueryBuilder();
    sqbSelect.SelectColumns(new string[] { "name"});
    sqbSelect.SelectFromTable("user");
    sqbSelect.AddWhere("category", Comparison.Equals, "18");       

    dsOutstanding = Conn.DataAdapter(CommandType.Text, sqbSelect.BuildQuery());
    sqbSelect = null;

    DataTable areaChart = dsOutstanding.Tables[0];

    for( int a = 0; a < areaChart.Rows.Count; a++) {

       // want to push the value to an array ;       

    }

}

谢谢你..

【问题讨论】:

  • 你用的是什么图表?通常您可以将数据表绑定到这样的图表:chart.DataSource = table; chart.DataBind();
  • 我正在使用 Chart.js,它需要数据是数组形式..

标签: c# sql asp.net arrays dataset


【解决方案1】:

您可以使用此语法阅读。

string[] array = new string[areaChart.Rows.Count];
for( int a = 0; a < areaChart.Rows.Count; a++) {
   array[a] = areaChart.Rows[a]["name"].ToString();          
}

【讨论】:

    【解决方案2】:

    您可以通过使用列名索引DataRow 来访问列数据

     var names = new string[areaChart.Rows.Count];
    
     for (var index = 0; index < areaChart.Rows.Count; index++)        
         names[index] = areaChart.Rows[index]["name"].ToString();  
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-12-20
      • 1970-01-01
      • 1970-01-01
      • 2018-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多