关于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. 如何使用SHOW WARNINGS?

    1.show warnings:显示上一个语句的错误.警告以及注意.如图:

  2. VMware下对虚拟机Ubuntu14系统所在分区sda1进行磁盘扩容

    VMware下对虚拟机Ubuntu14系统所在分区sda1进行磁盘扩容 一般来说,在对虚拟机里的Ubuntu下的磁盘进行扩容时,都是添加新的分区,而并不是对其系统所在分区进行扩容,如在此链接中http ...

  3. EF里Guid类型数据的自增长、时间戳和复杂类型的用法

    通过前两章Lodging和Destination类的演示,大家肯定基本了解Code First是怎么玩的了,本章继续演示一些很实用的东西.文章的开头提示下:提供的demo为了后面演示效果,前面代码有些 ...

  4. 微信小程序之用户数据解密(七)

    [未经作者本人同意,请勿以任何形式转载] 经常看到有点的小伙伴在群里问小程序用户数据解密流程,所以打算写一篇关于小程序用户敏感数据解密教程: 加密过程微信服务器完成,解密过程在小程序和自身服务器完成, ...

  5. 数据库设计中的Soft Delete模式

    最近几天有点忙,所以我们今天来一篇短的,简单地介绍一下数据库设计中的一种模式——Soft Delete. 可以说,该模式毁誉参半,甚至有非常多的人认为该模式是一个Anti-Pattern.因此在本篇文 ...

  6. Java下好用的开源库推荐

    作者:Jack47 转载请保留作者和原文出处 欢迎关注我的微信公众账号程序员杰克,两边的文章会同步,也可以添加我的RSS订阅源. 本文想介绍下自己在Java下做开发使用到的一些开源的优秀编程库,会不定 ...

  7. Linux网络编程系列-常见疑惑

    1.并发TCP最大连接数 一个TCP连接有一个四元组唯一标识{local_ip, local_port, remote_ip, remote_port} client端建立连接请求时,通常让系统分配一 ...

  8. svn diff 详解

    UI版: 如果多人编辑同一段代码,常常容易出现冲突的情况: 如果出现冲突,我们如何解决他呢? 1 可以选择使用自己的文件mime file,也可以使用 他们的文件 their file 2 解决冲突, ...

  9. HTML5知识点总结

    HTML5知识点总结(一) 一.HTML新增元素 1.IE9版本以下支持HTML5的方法 <!--[if lt IE9]> <script src="http://cdn. ...

  10. 从零开始编写自己的C#框架(17)——Web层后端首页

    后端首页是管理员登陆后进入的第一个页面,主要是显示当前登陆用户信息.在线人数.菜单树列表.相关功能按键和系统介绍.让管理员能更方便的找到息想要的内容. 根据不同系统的需要,首页会显示不同的内容,比如显 ...