博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用ASP.NET做一个简单的数据流动展示
阅读量:6842 次
发布时间:2019-06-26

本文共 3355 字,大约阅读时间需要 11 分钟。

需求:连接数据库,在网页上显示一行数据,总共十列,每两秒刷新一次,刷新时数据往前流动(后一个单元格覆盖前一个单元格,最后一个单元格生成一个随机数)

新建项目:

img_df7896f7f963639b832e4285b2b14e11.png

删除:

img_1e28c3d1dde0406d09b7e9f8a20a10a4.png

重建:

img_47960d6be908a67a8d6acb28d5c801af.png
img_ce6f143c3093491b5fefbd341b52d69d.png

放入工具:

img_052dbe7a20fcd5864c3e26b29ba28df0.png
img_dd707d195f66b944d7216f2af851fdc7.png

设置居中:

img_a91bd47a473d37f36d8401a47efa49de.png
img_04883e6817f1609c211cb04599a43869.png

新建数据库:

img_18bf4e38dda854c1ed139ecf173df6c4.png
img_ec45edcbf44b9bf8542fa8a887be04a7.png

新建表:

img_84d21fc80c881e5a5ece2af26441faff.png

建表之后更新数据库:

img_68c2096c61e41bb450dc924a914c10bd.png
img_6a0dd481ee23d0295ab87f608f0e2d32.png

更新好了之后点击刷新:

img_82a42f8e4c34a0245f023f754f8fbb16.png

刷新后:

img_e20a2ef77532168310cb074d91e944c3.png

右键randomT,在菜单里选择显示表数据,进入如下窗口:

手动键入第一行数据,再点击第二行任一格,完成第一行数据的添加:

img_b93a1a66e561eeda8d5a2e9a69e163a3.png

右键mydb.mdf:

img_21b36915097708c44ecbbcfe18298c55.png

点击属性,查看并复制连接字符串:

img_aa5a6ef064a150186d90a1dd6d9bb5b3.png

到web.config中使用:

img_6a10d75f59ca8b645551f4099f283335.png

改成相对路径:

img_3f55b25a82ef9e6706e40abaf2953acf.png

编写Default.aspx.cs:

using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Configuration;using System.Data;using System.Data.SqlClient;using System.Drawing;public partial class _Default : System.Web.UI.Page{    protected void Page_Load(object sender, EventArgs e)    {        showdata();    }    protected void showdata()    {        string connstr = ConfigurationManager.ConnectionStrings["connstr"].ToString();//取出字符串        SqlConnection myconn = new SqlConnection(connstr); //字符串对象化        myconn.Open();//打开数据库        string cmdstr = "select * from randomT";        SqlDataAdapter myda = new SqlDataAdapter(cmdstr, myconn);//sql字符串对数据库处理        DataSet myds = new DataSet();        myda.Fill(myds);//处理完的数据fill到myds        GridView1.DataSource = myds;        GridView1.DataBind();        myds.Dispose();        myda.Dispose();        myconn.Close();    }}

到此,运行,显示数据:

img_790456766e372b71d75503a512dc064c.png


设置属性:

img_7f0d75a81302a6b9649b12ebe84cb413.png

双击生成事件:

img_298b318c978d923b9668bc87d5fdaf52.png

最终编写Default.aspx.cs:

using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Configuration;using System.Data;using System.Data.SqlClient;using System.Drawing;public partial class _Default : System.Web.UI.Page{    protected void Page_Load(object sender, EventArgs e)    {    }    protected void showdata()    {        string connstr = ConfigurationManager.ConnectionStrings["connstr"].ToString();//取出字符串        SqlConnection myconn = new SqlConnection(connstr); //字符串对象化        myconn.Open();//打开数据库        string cmdstr = "select * from randomT";        SqlDataAdapter myda = new SqlDataAdapter(cmdstr, myconn);//sql字符串对数据库处理        DataSet myds = new DataSet();        myda.Fill(myds);//处理完的数据fill到myds        SqlCommand mycmd = new SqlCommand(cmdstr,myconn);        SqlDataReader mydr = mycmd.ExecuteReader();//读一整行的数据,注意在使用另外一个Execute的时候要将此关掉,不然会报错        int fieldCount = mydr.FieldCount;//得到列数        int[] valueArray = new int[fieldCount];//用来存列值        string[] fieldNames = new string[fieldCount];//用来存列名        for (int i = 0; i < fieldCount; i++)//获取列名        {            fieldNames[i] = mydr.GetName(i).ToString();        }        for (int i = 0; i < fieldCount; i++)//获取列值        {            valueArray[i] = Convert.ToInt32(myds.Tables[0].Rows[0][i].ToString());        }        mydr.Close();//解放用不到的资源,避免报错        for (int i = 1; i < fieldCount - 1; i++)//从后往前覆盖        {            valueArray[i] = valueArray[i + 1];        }        Random rd = new Random();        valueArray[fieldCount - 1] = rd.Next(0, 101);        //更新数据库        for(int i = 1; i <= fieldCount - 1; i++)        {            string updateStr = @"update randomT set " + fieldNames[i] + " = " + valueArray[i] + "where id=1";            mycmd.CommandText = updateStr;            mycmd.ExecuteNonQuery();        }        GridView1.DataSource = myds;        GridView1.DataBind();        myds.Dispose();        myda.Dispose();        myconn.Close();    }    protected void Timer1_Tick(object sender, EventArgs e)    {        showdata();    }}

实现每两秒刷新数据:

img_c8af7261d3ca2d0752df5079228664dc.png
img_881376536cd0bf29502e89aac152e725.png

转载地址:http://whdul.baihongyu.com/

你可能感兴趣的文章
如何使用VNC Viewer连接远程CentOS服务器
查看>>
持久化上下文
查看>>
Java并发/多线程指南
查看>>
深入理解并行编程1
查看>>
听诺奖评委讲演有感
查看>>
强制卸载无响应的nfs挂载目录
查看>>
RHCE认证培训+考试七天实录(一)
查看>>
把DataTable导入SqlServer中
查看>>
py2exe的逆向
查看>>
shell 游戏系列 俄罗斯方块
查看>>
DDOS和sql注入网络***实验
查看>>
DDN与×××备份互联
查看>>
Flask最佳实践
查看>>
kafka源码剖析(三)之日志管理-LogManager
查看>>
tcp连接wait连接过多解决
查看>>
EVE模拟器教程之如何设置预配
查看>>
Dell PowerEdge R720xd 上的 Microsoft Exchange 2010 与 R510 上的 Exchange 2007 之间的跨代大PK...
查看>>
A记录、NS记录、CNAME记录的区别和联系
查看>>
nginx搭建支持http和rtmp协议的流媒体服务器之---环境搭建
查看>>
Java 内存分配全面浅析
查看>>