c#数据库中的多列图

本文关键字:数据库 | 更新日期: 2023-09-27 18:11:26

我想创建一个多列图表按钮单击。图表的数据将来自数据库。我使用了以下代码。

protected void btnEffortProject_Click(object sender, EventArgs e)
{
    string str = System.Configuration.ConfigurationManager.ConnectionStrings["DBConnection"].ToString();
    SqlConnection con = new SqlConnection(str);
    con.Open();
    SqlCommand cmd = new SqlCommand("Select Title, Planned_Estimate, TotalEffort from DBAgile.dbo.Project Where Status = 'Completed'", con);
    SqlDataAdapter sdp = new SqlDataAdapter(cmd);
    DataSet ds = new DataSet();
    sdp.Fill(ds);
    Chart1.DataSource = ds;
    Chart1.Series["Series1"].XValueMember = "Title";
    Chart1.Series["Series1"].YValueMembers = "Planned_Estimate";
    Chart1.Series["Series2"].XValueMember = "Title";
    Chart1.Series["Series2"].YValueMembers = "TotalEffort";
    Chart1.DataBind();
}

aspx代码如下:

<asp:Chart ID="Chart1" runat="server" Width="400px" Visible="False">
        <Titles>
            <asp:Title ShadowOffset="3" Name="Items" />
        </Titles>
        <Legends>
            <asp:Legend Alignment="Center" Docking="Bottom" IsTextAutoFit="False" Name="Default"
                LegendStyle="Row" />
        </Legends>
        <Series>
            <asp:Series Name="Series1" XValueMember="Title" YValueMembers="Planned_Estimate" LegendText="Quarter 1"
                IsValueShownAsLabel="false" ChartArea="ChartArea1" MarkerBorderColor="#DBDBDB">
            </asp:Series>
            <asp:Series Name="Series2" XValueMember="Title" YValueMembers="TotalEffort" LegendText="Quarter 2"
                IsValueShownAsLabel="false" ChartArea="ChartArea1" MarkerBorderColor="#DBDBDB">
            </asp:Series>
        </Series>
        <ChartAreas>
            <asp:ChartArea Name="ChartArea1" BorderWidth="0" />
        </ChartAreas>
    </asp:Chart>
我做错了什么吗?因为代码运行良好,但不显示任何图表。我哪里错了?请帮助

c#数据库中的多列图

中的Visible="False"改为Visible="True"
<asp:Chart ID="Chart1" runat="server" Width="400px" Visible="False">