网上很多的chart控件的实例都没有绑定数据库,经过一番摸索后,终于实现了chart控件绑定数据库。

首先,在Visual Studio中建立一个网站,新建一个WebForm项目,名称为ChartTest1.aspx

前台:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ChartTest1.aspx.cs" Inherits="ChartTest1" %>

<%@ Register Assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
Namespace="System.Web.UI.DataVisualization.Charting" TagPrefix="asp" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div> <asp:Chart ID="Chart1" runat="server">
<Titles>
<asp:Title Font="微软雅黑, 16pt" Name="Title1" Text="****统计表">
</asp:Title>
</Titles>
<borderskin skinstyle="Emboss"></borderskin> <Series>
<asp:Series Name="Series1" ChartType="Bubble" MarkerSize="" MarkerStyle="Circle">
</asp:Series> </Series>
<ChartAreas>
<asp:ChartArea Name="ChartArea1" BorderColor="64, 64, 64, 64" BackSecondaryColor="Transparent" BackColor="64, 165, 191, 228" ShadowColor="Transparent" BackGradientStyle="TopBottom">
</asp:ChartArea>
</ChartAreas> </asp:Chart>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</div> </form>
</body>
</html>

后台代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Drawing;
using System.Data.SqlClient;
using System.Configuration;
using System.Data.OleDb; public partial class ChartTest1 : System.Web.UI.Page
{
public static string conn = "Data Source=(local);Integrated Security=True;Initial Catalog=HESDK1";
protected void Page_Load(object sender, EventArgs e)
{ }
//创建一张二维数据表
/// <summary>
/// 创建一张二维数据表
/// </summary>
/// <returns>Datatable类型的数据表</returns>
DataTable CreatData()
{
DataTable dt = new DataTable();
//实例化SqlConnection对象
SqlConnection sqlCon = new SqlConnection();
//实例化SqlConnection对象连接数据库的字符串
sqlCon.ConnectionString = conn;
//定义SQL语句
//sql公用部分
string sqlQ = "select TO_c,Plc_c from History ";
// DataTable tb = ADO.GetDataTable(sqlQ);
dt = GetDataTable(sqlQ); return dt;
}
//数据库查询返回datatable
public static DataTable GetDataTable(string Sqlstr)
{
DataTable dt;
SqlDataAdapter sda;
SqlConnection sqlCon = new SqlConnection();
//实例化SqlConnection对象连接数据库的字符串
sqlCon.ConnectionString = conn;
sqlCon.Open();
sda = new SqlDataAdapter(Sqlstr, conn);
//sda.SelectCommand.CommandTimeout = 120;
dt = new DataTable();
sda.Fill(dt);
sqlCon.Close();
return dt;
} protected void Button1_Click(object sender, EventArgs e)
{ SqlConnection connection = new SqlConnection(conn);
// 折线图
DataTable dt = CreatData(); // #region 折线图
Chart1.DataSource = dt;//绑定数据
Chart1.Series["Series1"].ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.Line;//设置图表类型
Chart1.Series[].XValueMember = "TO_c";//X轴数据成员列
Chart1.Series[].YValueMembers = "Plc_c";//Y轴数据成员列
Chart1.ChartAreas["ChartArea1"].AxisX.Title = "温度";//X轴标题
Chart1.ChartAreas["ChartArea1"].AxisX.TitleAlignment = StringAlignment.Far;//设置Y轴标题的名称所在位置位远
Chart1.ChartAreas["ChartArea1"].AxisY.Title = "压力";//Y轴标题
Chart1.ChartAreas["ChartArea1"].AxisY.TitleAlignment = StringAlignment.Far;//设置Y轴标题的名称所在位置位远
Chart1.ChartAreas["ChartArea1"].AxisX.Interval = ;//X轴数据的间距
Chart1.ChartAreas["ChartArea1"].AxisX.MajorGrid.Enabled = false;//不显示竖着的分割线
Chart1.Series[].IsValueShownAsLabel = true;//显示坐标值
// #endregion /*
Chart1.Series["Series1"].ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.Line;//设置图表类型
string mySelectQuery = "SELECT TO_c,Plc_c FROM History;";
SqlConnection connection = new SqlConnection(conn);
SqlCommand myCommand = new SqlCommand(mySelectQuery, connection);
myCommand.Connection.Open();
SqlDataReader myReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection);
Chart1.DataBindTable(myReader, "TO_c");
myReader.Close();
myCommand.Connection.Close();
* */
}
}

ASP.NET中的chart控件绑定SQL Server数据库的更多相关文章

  1. 解决Asp.net中的Chart控件运行出现错误提示“ ChartImg.axd 执行子请求时出错”

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABTkAAAJwCAIAAADN5fIdAAAgAElEQVR4nOzdfZAc1X3o/VNFlbcoJf

  2. (转)客户端触发Asp.net中服务端控件事件

    第一章. Asp.net中服务端控件事件是如何触发的 Asp.net 中在客户端触发服务端事件分为两种情况: 一. WebControls中的Button 和HtmlControls中的Type为su ...

  3. asp.net中的ListBox控件添加双击事件

    问题:在Aspx页里的ListBox A中添加双击事件,将选中项添加到另一个ListBox B中,双击ListBox B中的选中项,删除当前选中项 页面: <asp:ListBox ID=&qu ...

  4. ASP.NET中 WebForm 窗体控件使用及总结【转】

    原文链接:http://www.cnblogs.com/ylbtech/archive/2013/03/06/2944675.html ASP.NET中 WebForm 窗体控件使用及总结. 1.A, ...

  5. C#常见控件与SQL Sever数据库交互

    C#常见控件与SQL Sever数据库交互 下拉框(ComboBox)与数据库绑定 首先,我们采用DataSet作为临时的数据库,这样会比较好 那么,我们先创建两个成员(对象) string sqlc ...

  6. 如何用asp.net MVC框架、highChart库从sql server数据库获取数据动态生成柱状图

    如何用asp.net MVC框架.highChart库从sql server数据库获取数据动态生成柱状图?效果大概是这样的,如图: 请问大侠这个这么实现呢?

  7. .NET跨平台之旅:升级至ASP.NET 5 RC1,Linux上访问SQL Server数据库

    今天微软正式发布了ASP.NET 5 RC1(详见Announcing ASP.NET 5 Release Candidate 1),.NET跨平台迈出了关键一步. 紧跟这次RC1的发布,我们成功地将 ...

  8. EF Core中,通过实体类向SQL Server数据库表中插入数据后,实体对象是如何得到数据库表中的默认值的

    我们使用EF Core的实体类向SQL Server数据库表中插入数据后,如果数据库表中有自增列或默认值列,那么EF Core的实体对象也会返回插入到数据库表中的默认值. 下面我们通过例子来展示,EF ...

  9. asp.net中的GridView控件的部分知识点

    <PagerTemplate> <br /> <asp:Label ID="lblPage" runat="server" Tex ...

随机推荐

  1. iOS之UITableView组头组尾视图/标题悬停

    最近笔者在公司的iOS开发中,有一个iOS开发同事跑来问了两个问题:1.给UITableView设置了组头和组尾视图,但是一直显示不出来?2.UITableView的section的header和fo ...

  2. Python 【第五章】:线程、进程和协程

    Python线程 Threading用于提供线程相关的操作,线程是应用程序中工作的最小单元. #!/usr/bin/env python # -*- coding:utf-8 -*- import t ...

  3. ActiveMQ_Mqtt的TCP丢包

    现象 Mqtt Consumer应该收到的消息少于预期,登录ActiveMQ的管理页面里的Topics,查看Messages Enqueued发现同样少于理应接收的数量. 定位问题 怀疑是TCP丢包, ...

  4. 【翻译】如何在AJAX生成的内容中再次运行Prism.js

    一.前言 最近用一个十分轻量级的网页代码高亮Js库,应用到项目中发现了一个问题,对于静态的已经写好的代码,Prism的高亮插件是没有问题的,但是通过Ajax异步获取数据并修改DOM时发现,Prism高 ...

  5. Day7-面向对象

    面向对象编程定义 OOP编程是利用"类"和"对象"来创建各种模型来实现对真实世界的描述,使用面向对象编程的原因一方面是因为它可以使程序的维护和扩展变得更简单,并 ...

  6. C# .Net :Excel NPOI导入导出操作教程之将Excel文件读取并写到数据库表,示例分享

    using (FileStream fileReader = File.OpenRead(@"C:\Users\Administrator\Desktop\112.xls"))   ...

  7. Swift中的可选链与内存管理(干货系列)

    干货之前:补充一下可选链(optional chain) class A { var p: B? } class B { var p: C? } class C { func cm() -> S ...

  8. js

    1.判断是否为空 if (typeof(a)!="undefined") 2. pop()移除数组最后一个元素 var arr = [];   $('#tableid tr').f ...

  9. Java学习笔记-Math类

    并非所有的类都需要main方法.Math类和JOptionPane类都没有main方法.这些类中所包含的方法主要是为了供其他类使用. package welcome; public class Tes ...

  10. RabbitMQ学习系列(二): RabbitMQ安装与配置

    上一篇,简单介绍了RabbitMQ的情况还有一些相关的概念,这一篇,会讲讲 RabbitMQ安装与配置. 1.安装 Rabbit MQ 是建立在强大的Erlang OTP平台上,因此安装RabbitM ...