前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用ASP.NET做一个简单的数据流动展示

用ASP.NET做一个简单的数据流动展示

作者头像
凌川江雪
发布2019-02-25 11:20:39
5770
发布2019-02-25 11:20:39
举报
文章被收录于专栏:李蔚蓬的专栏李蔚蓬的专栏

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

新建项目:

删除:

重建:

放入工具:

设置居中:

新建数据库:

新建表:

建表之后更新数据库:

更新好了之后点击刷新:

刷新后:

右键randomT,在菜单里选择显示表数据,进入如下窗口: 手动键入第一行数据,再点击第二行任一格,完成第一行数据的添加:

右键mydb.mdf:

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

到web.config中使用:

改成相对路径:

编写Default.aspx.cs:

代码语言:javascript
复制
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();
    }
}

到此,运行,显示数据:


设置属性:

双击生成事件:

最终编写Default.aspx.cs:

代码语言:javascript
复制
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();
    }
}

实现每两秒刷新数据:

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.01.06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档