public partial class Piechart : System.Web.UI.Page
{
private decimal total = 0; // course total
private decimal registered = 0;
private decimal regAttend = 0;
private decimal nRegAttend = 0;
private int regPer = 0;
private int regToTotalPer = 0;
private int nRegPer = 0;
private int angle = 0;
private int angle2 = 0;
private int angle3 = 0;
private int parTotal = 0;
//const string G = "SELECT DISTINCT COUNT(Grouping) from Attendance";
// SqlConnection c = new SqlConnection(@"Data Source=localhost\SQLEXPRESS;Initial Catalog=PSeminar;Integrated Security=true;Trusted_Connection=Yes;MultipleActiveResultSets=true");
//SqlCommand Command = new SqlCommand(G);
private string[] Status = new string[2] { "Attend", "Didn't Attend" };
private string[] Course = new string[] {//items from database};
我想使用sql语句调用项目列表并存储在上面的数组中。我之前正在这样做,因为数组中的项目是硬编码的。现在我想从数据库中检索它,因为只要有新项目,就会自动绘制一个新的饼图。
答案 0 :(得分:1)
这是使用ArrayList
ArrayList Course = new ArrayList();
const string query = "SELECT DISTINCT COUNT(Grouping) from Attendance";
const string connectionString = @"Data Source=localhost\SQLEXPRESS;Initial Catalog=PSeminar;Integrated Security=true;Trusted_Connection=Yes;MultipleActiveResultSets=true";
using (SqlConnection cn = new SqlConnection(connectionString))
{
using (SqlCommand cm = new SqlCommand(query, cn))
{
cn.Open();
SqlDataReader reader = cm.ExecuteReader();
while (reader.Read())
{
Course.Add(reader.GetString(0));
}
}
}
//Course.ToArray(); // <-- cast to string array object do use in the pie chart