首页 > 解决方案 > 在 asp.net 中使用 ajax 工具包扩展创建动态条形图

问题描述

我记录了足球比赛中发生的事件,例如进球、远射、失球、黄牌等。这些都存储在我的 SQL 数据库中。我想为我的 asp.net Web 表单使用 ajax 工具包创建一个动态条形图。我希望图表的 Y 轴显示这些事件的名称,X 轴显示每个事件在比赛过程中发生的次数。

每次在我的数据库中发生一个事件时,我都需要计数,但是我不知道该怎么做。

这就是我的数据库表的样子。 在此处输入图像描述

下面是我已经拥有的代码,但是每当我查看条形图时它都是空的。

             sqlcon. Open();
                      SqlDataAdapter sqlda = new SqlDataAdapter("SELECT 
                      * FROM Events WHERE  FixtureID = " + 
                      ddlFixture.SelectedValue, sqlcon);
                      DataSet ds = new DataSet();
                      sqlda.Fill(ds);
                      BarChart1.Visible = true;
                      string[] events = new string[15];
                      string[] count = new string[15];

            if (ds.Tables[0].Rows.Count > 0)
            {

                count[0] = ds.Tables[0].Rows[0]["EventName"].ToString();

                events[0] = "Point";
                events[1] = "Goal";
                events[2] = "Wide";
                events[3] = "Break";
                events[4] = "Free Con";
                events[5] = "Free Won";
                events[6] = "Mark";
                events[7] = "Block";
                events[8] = "Yellow";
                events[9] = "Red";
                events[10] = "Black";
                events[11] = "T/O Won";
                events[12] = "T/O Lost";
                events[13] = "Kickout Won";
                events[14] = "Kickout Lost";

任何帮助表示赞赏。谢谢!!

标签: c#asp.netvisual-studiobar-chartajaxcontroltoolkit

解决方案


BarChart1.DataSource = YourDTable;//or ds.Tables[0]
BarChart1.Legends[0].Enabled = true;
BarChart1.Series[0].XValueMember = "Time";
BarChart1.Series[0].YValueMembers = "EventName";
BarChart1.DataBind();

如果我理解正确,那么也许你的决定可能是这样的。我认为更好的方法是使用图表 js 或其他图表,并使用 ajax 解决。


推荐阅读