关于ASP.NET中后台数据库和前台的数据控件的绑定问题

最近一直在学习个知识点,自己创建了SQL Server数据库表,想在ASP.NET中连接数据库,并把数据库中的数据显示在前台,注意,这里的数据显示不是使用asp.net自带的数据显示控件进行数据的绑定,而是使用开源的数据表格插件DataTables。这样的显示效果要比DataGridView好看的多。下面将详细的过程记录如下,供初学者参考。

一、要将SQL Server数据库中的数据通过普通的table表格显示在页面上,首先是使用一个绑定数据的控件:Repeater 控件,在使用绑定表达式:<%#字段名称>。在后台使用DataBind方法。

具体事例代码:

前台:

<table id="tb_example"  class="display cell-border hover dt-body-center  row-border order-column ">
<thead>
<tr>
<th>公司名称</th>
<th>公司地点</th>
<th>注册资金</th>
<th>公司编号</th>
<th>公司代表</th>
</tr>
</thead>
<asp:Repeater ID="ratTable" runat="server">
<ItemTemplate>
<tr>
<td><%#Eval("PRONAME") %> </td>
<td><%#Eval("PROESS") %></td>
<td><%#Eval("PROMENOY") %></td>
<td><%#Eval("PROID") %></td>
<td><%#Eval("PROPERSON") %></td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>

后台:

            string SqlStr = "Server=(local);User Id=sa;Pwd=123;DataBase=ZBD";//连接本地的SQL Server数据
SqlConnection conn = new SqlConnection(SqlStr); //实例化SQLConnection对象进行连接数据
string sqlstr = "select PRONAME,PROID,PROESS,PROMENOY,PROPERSON from tb_zbd ";//定义SQL查询语句用于查询表数据
SqlCommand myCmd = new SqlCommand(sqlstr, conn);
DataSet ds = new DataSet();//定义dataset对象
conn.Open();//打开数据库
SqlDataAdapter da = new SqlDataAdapter(sqlstr, conn);
conn.Close();
da.Fill(ds);
ratTable.DataSource = ds.Tables[];
ratTable.DataBind();

代码说明:上述代码定义了DataAdapter对象。DataAdapter对象是DataSet对象和数据源之间联系的桥梁,主要是从数据源中检索数据、填充DataSet对象中的表或者把用户对DataSet对象做出的更改写入到数据源。

运行操作的显示结果如下图:


二、数据绑定的相关知识点总结

数据绑定是指从数据源获取数据向数据源写入数据。简单的数据绑定可以使对变量或属性的绑定,比较复杂的是对ASP.NET数据绑定控件的操作。

说明:所有的数据绑定表示式都必须包含在<%#...%>中。执行绑定操作要么执行Page对象的DataBind方法,要么执行数据绑定控件对应的实例对象的DataBind方法。

1、简单的属性绑定

基于属性的绑定所涉及的属性必须包含get访问器,因为在数据绑定过程中,数据显示控件需要通过属性的get访问器从属性中读取数据。

语法:<%# 属性名称%>

在后台执行Page.DataBind()方法。

技巧:简单变量的数据绑定类似于简单的属性绑定。例如定义一个公共的变量并赋值,在前台的label控件额Text属性中使用数据语法<%#,,,%>也可以进行绑定。

2、表达式绑定

将数据绑定显示控件之前,对数据的处理,通过表示式将执行的结果显示在控件之上。

3、集合绑定

像一些比较特殊的数据控件需要以数据集合作为数据源进行数据的绑定。

4、技巧总结:对于数据控件的绑定,是在数据绑定表达式中使用Eval和Bind方法进行数据绑定。其中二者的区别;

<%#Eval("数据字段名称")%>这种方法是单向绑定,只具有读取功能。

<%#Bind("数据字段名称")%>这种方法是双向的,同时具有读取和写入的功能。

ASP.NET中后台数据和前台控件的绑定的更多相关文章

  1. asp.net中遍历界面上所有控件进行属性设置

    * 使用方法: *  前台页面调用方法,重置:    protected void Reset_Click(object sender, EventArgs e)        {           ...

  2. asp.net中的时间日期选择控件

    asp.net中的时间日期选择控件 Posted on 2008-07-17 17:37 飛雪飄寒 阅读(22922) 评论(6) 编辑 收藏     在系统中经常需要进行时间日期选择(比如查询时间范 ...

  3. c# 后台线程 访问前台控件并显示信息

    //设置为后台线程 Thread th = new Thread(delegate() { append(); }); th.IsBackground = true; th.Start(); //在a ...

  4. ASP .NET MVC HtmlHelper扩展——简化“列表控件”的绑定

    在众多表单元素中,有一类<select>元素用于绑定一组预定义列表.传统的ASP.NET Web Form中,它对应着一组重要的控件类型,即ListControl,我们经常用到DropDo ...

  5. ASP.NET中的Image和ImageButton控件

    Image 控件用来显示图形.Image 控件可以显示来自位图.图标或元文件的图形,也可以显示增强的元文件.JPEG 或 GIF文件. ImageButton 控件用于显示可点击的图像. Image ...

  6. Asp.net MVC 传递数据 从前台到后台,包括单个对象,多个对象,集合

    今天为大家分享下 Asp.net MVC 将数据从前台传递到后台的几种方式. 环境:VS2013,MVC5.0框架 1.基本数据类型 我们常见有传递 int, string, bool, double ...

  7. 在 ASP.NET 中创建数据访问和业务逻辑层(转)

    .NET Framework 4 当在 ASP.NET 中处理数据时,可从使用通用软件模式中受益.其中一种模式是将数据访问代码与控制数据访问或提供其他业务规则的业务逻辑代码分开.在此模式中,这两个层均 ...

  8. ASP.Net中后台控制页面提示信息的显示方式

    ASP.Net中后台控制页面提示信息的显示方式   用于删除或修改成功后的显示:(背景No空白) ScriptManager.RegisterStartupScript(this, typeof(Pa ...

  9. ASP.NET MVC中加载WebForms用户控件(.ascx)

    原文:ASP.NET MVC中加载WebForms用户控件(.ascx) 问题背景 博客园博客中的日历用的是ASP.NET WebForms的日历控件(System.Web.UI.WebControl ...

随机推荐

  1. PowerShell 数组以及XML操作

    PowerShell基础 PowerShell数组操作 将字符串拆分成数据的操作 cls #原始字符串 $str = "abc,def,ghi,mon" #数据定义 #$StrAr ...

  2. ASP.NET MVC Model绑定(二)

    ASP.NET MVC Model绑定(二) 前言 上篇对于Model绑定的简单演示想必大家对Model绑定的使用方式有一点的了解,那大家有没有想过Model绑定器是在什么时候执行的?又或是执行的过程 ...

  3. 延迟求值-如何让Lo-Dash再提速x100?

    「注释」作者在本文里没有说明这么一个事实: 目前的版本Lo-Dash v2.4.1并没有引入延迟求值的特性,Lo-Dash 3.0.0-pre中部分方法进行了引入,比如filter(),map(),r ...

  4. .NET基础 一步步 一幕幕[循环、逻辑语句块]

    循环.逻辑语句块   好久不写博客了,断更了好几天了,从上周五到今天,从北京到上海,跨越了1213.0公里,从一个熟悉的城市到陌生的城市,还好本人适应力比较好,还有感谢小伙伴的接风咯,一切都不是事,好 ...

  5. 自定义view(一)

    最近在学习自定义view  一遍看一别学顺便记录一下 1.View的测量-------->onMeasure() 首先,当我们要画一个图形的时候,必须知道三个数据:位置,长度,宽度   才能确定 ...

  6. 初学者--bootstrap(六)组件中的下拉菜单----在路上(10)

    组件---下拉菜单 用于显示链接列表的可切换.有上下文的菜单.下拉菜单的 JavaScript 插件让它具有了交互性. 将下拉菜单触发器和下拉菜单都包裹在 .dropdown 里,或者另一个声明了 p ...

  7. C# 根据类型名称 生成实体 调用方法

    System.Reflection.Assembly ass = System.Reflection.Assembly.Load("项目名称或者DLL"); //System.Th ...

  8. iOS----调试技巧,让你的开发事半功倍

    NSLog,po命令和普通断点调试相信每个iOS开发者都会,这里就不作介绍了. 一.Memory Graph Xcode8新增:Memory Graph解决闭包引用循环问题 这个时候就进入了断点模式, ...

  9. WCF学习之旅—WCF寄宿前的准备(八)

    一.WCF服务应用程序与WCF服务库 我们在平时开发的过程中常用的项目类型有“WCF 服务应用程序”和“WCF服务库”. WCF服务应用程序,是一个可以执行的程序,它有独立的进程,WCF服务类协定的定 ...

  10. Atitit 动态按钮图片背景颜色与文字组合解决方案

    Atitit 动态按钮图片背景颜色与文字组合解决方案 转换背景颜色,setFont("cywe_img", fontScale, 50, 5) 设置文字大小与坐标 文字分拆,使用字 ...