ASP.NET中的chart控件绑定SQL Server数据库
网上很多的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数据库的更多相关文章
- 解决Asp.net中的Chart控件运行出现错误提示“ ChartImg.axd 执行子请求时出错”
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABTkAAAJwCAIAAADN5fIdAAAgAElEQVR4nOzdfZAc1X3o/VNFlbcoJf
- (转)客户端触发Asp.net中服务端控件事件
第一章. Asp.net中服务端控件事件是如何触发的 Asp.net 中在客户端触发服务端事件分为两种情况: 一. WebControls中的Button 和HtmlControls中的Type为su ...
- asp.net中的ListBox控件添加双击事件
问题:在Aspx页里的ListBox A中添加双击事件,将选中项添加到另一个ListBox B中,双击ListBox B中的选中项,删除当前选中项 页面: <asp:ListBox ID=&qu ...
- ASP.NET中 WebForm 窗体控件使用及总结【转】
原文链接:http://www.cnblogs.com/ylbtech/archive/2013/03/06/2944675.html ASP.NET中 WebForm 窗体控件使用及总结. 1.A, ...
- C#常见控件与SQL Sever数据库交互
C#常见控件与SQL Sever数据库交互 下拉框(ComboBox)与数据库绑定 首先,我们采用DataSet作为临时的数据库,这样会比较好 那么,我们先创建两个成员(对象) string sqlc ...
- 如何用asp.net MVC框架、highChart库从sql server数据库获取数据动态生成柱状图
如何用asp.net MVC框架.highChart库从sql server数据库获取数据动态生成柱状图?效果大概是这样的,如图: 请问大侠这个这么实现呢?
- .NET跨平台之旅:升级至ASP.NET 5 RC1,Linux上访问SQL Server数据库
今天微软正式发布了ASP.NET 5 RC1(详见Announcing ASP.NET 5 Release Candidate 1),.NET跨平台迈出了关键一步. 紧跟这次RC1的发布,我们成功地将 ...
- EF Core中,通过实体类向SQL Server数据库表中插入数据后,实体对象是如何得到数据库表中的默认值的
我们使用EF Core的实体类向SQL Server数据库表中插入数据后,如果数据库表中有自增列或默认值列,那么EF Core的实体对象也会返回插入到数据库表中的默认值. 下面我们通过例子来展示,EF ...
- asp.net中的GridView控件的部分知识点
<PagerTemplate> <br /> <asp:Label ID="lblPage" runat="server" Tex ...
随机推荐
- bash基础
bash 是一个为GNU计划编写的Unix shell.它的名字是一系列缩写:Bourne-Again SHell - 这是关于Bourne shell(sh)的一个双关语(Bourne again ...
- ajex请求的数据 什么时候需用Json.parse()
ajex请求的数据 什么时候需用 Json.parse()
- JavaScript系列文章:变量提升和函数提升
第一篇文章中提到了变量的提升,所以今天就来介绍一下变量提升和函数提升.这个知识点可谓是老生常谈了,不过其中有些细节方面博主很想借此机会,好好总结一下. 今天主要介绍以下几点: 1. 变量提升 2. 函 ...
- 重复安装相同包名APK出现的问题。
一. INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES 这样的问题主要是签名冲突造成的,比如你使用了ADB的debug权限签名,但后来使用标准sign签名后 ...
- javascript事件操作
这里使用一个图片切换的方法来举例说明,如何通过代码操作事件. 1 通过html属性处理事件 <img id='avatar1' src="http://7u2gej.com1.z0.g ...
- iframe的sandbox使用
sandbox:限制iframe的权限,解决安全性问题. 定义 如果被规定为空字符串(sandbox=""),sandbox 属性将会启用一系列对行内框架中内容的额外限制.sand ...
- js parsefloat
项目中需要对返回的小数进行格式化,把零省略掉. 1.00 ---> 1 1.01 ---> 1.01 1.10 ---> 1.1 parseFloat() 函数可解析一个 ...
- http与https的区别
HTTPhttp是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型.http通常承载于TCP之上,有时也承载于TLS或SSL协议层之上,这就是常说的httphttp 无状态协议,同一个客 ...
- C++类成员在内存中的存储及对齐方式
前言:数据对齐的基本理论参见文章:http://www.cnblogs.com/MyBlog-Richard/articles/5993448.html 一.空类的大小 C++中空类的大小是1,这是因 ...
- ORM之殇,我们需要什么样的ORM框架?
最近在研究ORM,究竟什么样的框架才是我们想要的 开发框架的意义在于 开发更标准,更统一,不会因为不同人写的代码不一样 开发效率更高,无需重新造轮子,重复无用的代码,同时简化开发流程 运行效率得到控制 ...