ASP.NET WEB项目中GridView与Repeater数据绑定控件的用法

2023-11-30 09:20

本文主要是介绍ASP.NET WEB项目中GridView与Repeater数据绑定控件的用法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ASP.NET WEB项目中GridView与Repeater数据绑定控件的用法


目录

ASP.NET WEB项目中GridView与Repeater数据绑定控件的用法

前言

环境

测试数据(单表)

DBHelper

GridView用法

Repeater用法

总结


前言

ASP.NET WEB是一门非常简单的课程内容,我们大概用三章的内容来包含所有的知识点,三章分为

1、ASP.NET WEB项目创建与文件上传操作

2、ASP.NET WEB项目中Cookie与Session的用法

3、ASP.NET WEB项目中GridView与Repeater数据绑定控件的用法

分为三章,基本上将具体的用法讲解完毕,配套的【Repeater】的基础项目视频包含【数据库CRUD操作】让你快速上手,解决你考试的后顾之忧。

环境

系统环境:【win11】

开发工具:【Visual Studio 2017】

数据库:【SQLServer 2019】


测试数据(单表)

直接单表测试也方便,毕竟我们只看功能。

测试数据脚本:

DROP TABLE [dbo].[users]
GO
CREATE TABLE [dbo].[users] (
[id] int NOT NULL IDENTITY(1,1) ,
[userName] varchar(20) NOT NULL ,
[sex] bit NOT NULL ,
[age] int NOT NULL ,
[introduce] varchar(200) NOT NULL 
)GO
DBCC CHECKIDENT(N'[dbo].[users]', RESEED, 3)
GO-- ----------------------------
-- Records of users
-- ----------------------------
SET IDENTITY_INSERT [dbo].[users] ON
GO
INSERT INTO [dbo].[users] ([id], [userName], [sex], [age], [introduce]) VALUES (N'1', N'王语嫣', N'0', N'16', N'琅嬛福地,神仙姐姐。');
GO
INSERT INTO [dbo].[users] ([id], [userName], [sex], [age], [introduce]) VALUES (N'2', N'小龙女', N'0', N'18', N'终南山下,活死人墓。冰山美人,绝世江湖。');
GO
INSERT INTO [dbo].[users] ([id], [userName], [sex], [age], [introduce]) VALUES (N'3', N'赵灵儿', N'0', N'15', N'灵蛇岛等待逍遥哥哥的小姑娘。');
GO
SET IDENTITY_INSERT [dbo].[users] OFF
GO-- ----------------------------
-- Indexes structure for table users
-- ------------------------------ ----------------------------
-- Primary Key structure for table [dbo].[users]
-- ----------------------------
ALTER TABLE [dbo].[users] ADD PRIMARY KEY ([id])
GO

DBHelper

1、需要换包名,也就是【namespace Demo_1】

2、需要换成自己的数据库地址以及用户名与pwd

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;namespace Demo_1
{public class DBHelper{private static string url = "Data Source=.;Initial Catalog=mytest;Integrated Security=True";//账密方式//private static string url = "server=.;database=girl1804;uid=sa;pwd=root";/// <summary>/// 获取查询信息/// </summary>/// <param name="sql"></param>/// <returns></returns>public static DataTable Query(string sql){SqlConnection conn = new SqlConnection(url);SqlDataAdapter sdap = new SqlDataAdapter(sql, conn);DataSet ds = new DataSet();sdap.Fill(ds);return ds.Tables[0];}/// <summary>/// 修改/// </summary>/// <param name="sql"></param>/// <returns></returns>public static int ExecuteNonQuery(string sql){SqlConnection conn = new SqlConnection(url);conn.Open();SqlCommand cmd = new SqlCommand(sql, conn);int rows = cmd.ExecuteNonQuery();conn.Close();return rows;}/// <summary>/// 存储过程·一般用不到,大型项目严禁使用/// </summary>/// <param name="proName"></param>/// <param name="paras"></param>/// <returns></returns>public static bool ExcuteProcedure(string proName, SqlParameter[] paras){SqlConnection conn = new SqlConnection(url);conn.Open();SqlCommand cmd = new SqlCommand(proName, conn);cmd.CommandType = CommandType.StoredProcedure;for (int i = 0; i < paras.Length; i++){cmd.Parameters.Add(paras[i]);}int rows = cmd.ExecuteNonQuery();conn.Close();return rows > 0;}}
}

GridView用法

创建GridView测试窗体

前台

<asp:GridView runat="server" ID="gridView" AutoGenerateColumns="false"><Columns><asp:BoundField DataField="id" HeaderText="编号"/><asp:BoundField DataField="userName" HeaderText="昵称"/><asp:BoundField DataField="sex" HeaderText="性别"/><asp:BoundField DataField="age" HeaderText="年龄"/><asp:BoundField DataField="introduce" HeaderText="简介"/></Columns>
</asp:GridView>

后台

protected void Page_Load(object sender, EventArgs e)
{if (!IsPostBack) {string sql = "select * from users";this.gridView.DataSource = DBHelper.Query(sql);this.gridView.DataBind();}
}

输出效果:

Repeater用法

创建【Repeater】测试窗体

前台

<link href="Content/bootstrap.css" rel="stylesheet" />
<table class="table table-bordered table-hover"><tr><th>编号</th><th>昵称</th><th>性别</th><th>年龄</th><th>简介</th></tr><asp:Repeater runat="server" ID="repeater"><ItemTemplate><tr><td><%# Eval("id") %></td><td><%# Eval("userName") %></td><td><%# Eval("sex") %></td><td><%# Eval("age") %></td><td><%# Eval("introduce") %></td></tr></ItemTemplate></asp:Repeater>
</table>

后台

protected void Page_Load(object sender, EventArgs e)
{if (!IsPostBack){string sql = "select * from users";this.repeater.DataSource = DBHelper.Query(sql);this.repeater.DataBind();}
}

输出效果:

总结

ASP.NET Web的知识点不是很多,我们后面会有ASP.NET MVC的课程会进行更多ASP.NET WEB端的实际讲解。其实最期待的还是.NET Core微服务,现在已经是.NET6.0了,做项目真的挺方便的呢。但是对于程序员要求相对要高一些。

我留了一篇练习的文章,包含整个的增删改查,希望能帮助到大家,链接再下方:

ASP.NET Web——GridView完整增删改查示例(全篇幅包含sql脚本)大二结业考试必备技能

这篇关于ASP.NET WEB项目中GridView与Repeater数据绑定控件的用法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/436482

相关文章

MySQL 中的 CAST 函数详解及常见用法

《MySQL中的CAST函数详解及常见用法》CAST函数是MySQL中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型,本文给大家介绍MySQL中的CAST... 目录mysql 中的 CAST 函数详解一、基本语法二、支持的数据类型三、常见用法示例1. 字符串转数字2. 数字

Python中你不知道的gzip高级用法分享

《Python中你不知道的gzip高级用法分享》在当今大数据时代,数据存储和传输成本已成为每个开发者必须考虑的问题,Python内置的gzip模块提供了一种简单高效的解决方案,下面小编就来和大家详细讲... 目录前言:为什么数据压缩如此重要1. gzip 模块基础介绍2. 基本压缩与解压缩操作2.1 压缩文

MySQL 删除数据详解(最新整理)

《MySQL删除数据详解(最新整理)》:本文主要介绍MySQL删除数据的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录一、前言二、mysql 中的三种删除方式1.DELETE语句✅ 基本语法: 示例:2.TRUNCATE语句✅ 基本语

解读GC日志中的各项指标用法

《解读GC日志中的各项指标用法》:本文主要介绍GC日志中的各项指标用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、基础 GC 日志格式(以 G1 为例)1. Minor GC 日志2. Full GC 日志二、关键指标解析1. GC 类型与触发原因2. 堆

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1

MySQL数据库中ENUM的用法是什么详解

《MySQL数据库中ENUM的用法是什么详解》ENUM是一个字符串对象,用于指定一组预定义的值,并可在创建表时使用,下面:本文主要介绍MySQL数据库中ENUM的用法是什么的相关资料,文中通过代码... 目录mysql 中 ENUM 的用法一、ENUM 的定义与语法二、ENUM 的特点三、ENUM 的用法1

JavaSE正则表达式用法总结大全

《JavaSE正则表达式用法总结大全》正则表达式就是由一些特定的字符组成,代表的是一个规则,:本文主要介绍JavaSE正则表达式用法的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录常用的正则表达式匹配符正则表China编程达式常用的类Pattern类Matcher类PatternSynta

MyBatisPlus如何优化千万级数据的CRUD

《MyBatisPlus如何优化千万级数据的CRUD》最近负责的一个项目,数据库表量级破千万,每次执行CRUD都像走钢丝,稍有不慎就引起数据库报警,本文就结合这个项目的实战经验,聊聊MyBatisPl... 目录背景一、MyBATis Plus 简介二、千万级数据的挑战三、优化 CRUD 的关键策略1. 查

python实现对数据公钥加密与私钥解密

《python实现对数据公钥加密与私钥解密》这篇文章主要为大家详细介绍了如何使用python实现对数据公钥加密与私钥解密,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录公钥私钥的生成使用公钥加密使用私钥解密公钥私钥的生成这一部分,使用python生成公钥与私钥,然后保存在两个文

MySQL之InnoDB存储引擎中的索引用法及说明

《MySQL之InnoDB存储引擎中的索引用法及说明》:本文主要介绍MySQL之InnoDB存储引擎中的索引用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录1、背景2、准备3、正篇【1】存储用户记录的数据页【2】存储目录项记录的数据页【3】聚簇索引【4】二