从MySql数据库中读取平均值。 C#ASP.NET

时间:2015-11-10 04:23:01

标签: c# mysql asp.net

我的页面中有以下代码:

protected void Page_Load(object sender, EventArgs e)
{
    conn.Open();
    string selectQuery = @"SELECT AVG(odometer_reading),truck_id FROM 
              inspection WHERE date BETWEEN '2015-12-01' AND '2016-06-01' 
              GROUP BY truck_id";
    MySqlCommand cmd = new MySqlCommand(selectQuery, conn);
    MySqlDataReader reader = cmd.ExecuteReader();
    foreach (DbDataRecord rowData in reader) 
    {
       populateTable(rowData);
    }               
}
private void populateTable (DbDataRecord rowData)
{
    TableRow tr = new TableRow();
    TableCell cell1 = new TableCell();
    cell1.Text = rowData.GetString(rowData.GetOrdinal("AVG(odometer_reading)")).ToString();
    tr.Cells.Add(cell1);// Error
    TableCell cell2 = new TableCell();
    cell2.Text = rowData.GetString(rowData.GetOrdinal("truck_id")).ToString();
     tr.Cells.Add(cell2);
     tbl_TruckEfficiency.Rows.Add(tr);
 }

我收到错误Unable to cast object of type 'System.Double' to type 'System.String'.可能是造成这种情况的原因。

或者

是否有其他方法可以让AVG(odometer_reading)将其cell1.text忽略其数据类型以避免错误。谢谢!

1 个答案:

答案 0 :(得分:0)

尝试这个

cell1.Text=rowData["AVG(odometer_reading)"].ToString();