ASP.NET实现数据绑定
一、数据绑定语法
数据绑定表达式包含在“<%#”和“%>”分隔符之内,并使用Eval方法和Bind方法。Eval方法用于定义单向(只读)绑定,Bind方法用于定义双向(可更新)绑定。
语法格式:<%#Eval("字段名") %>
<%#Bind("字段名") %>
<%#绑定表达式 %> 不仅可以绑定数据源,而且可以绑定简单属性、集合、表达式,甚至从方法调用返回结果。
二、数据绑定表达式出现的位置
1.可以将数据绑定表达式包含在服务器控件或者普通的HTML元素的开始标记中,作为属性名和属性值对的值。eg:
<asp:TextBox ID="TextBox1" runat="server" Text='<%#数据绑定表达式%>'></asp:TextBox>
此时数据的绑定表达式可以是一个变量,也可以是一个带返回值的C#方法,也可以是某个控件的某个属性的值,也可以是C#对象的某个字段或者属性的值等。当然也可以直接就是一个字符串。
如果此时的数据绑定表达式是Eval("数据库中某个表的某个字段")等,那么必须把TextBox1放在某个循环显示的控件的模板中才正确,否则会提示:“Eval()、XPath()和Bind()这类数据绑定方法只能在数据绑定控件的上下文中使用",意思是要把TextBox1放在像Repeater、DataList、GridView这样的控件的模板中。
2.数据绑定表达式可以包含在页面中的任何位置。
如果此时的数据绑定表达式是Eval("数据库中某个表的某个字段")等,那么必须把<%#绑定表达式1 %>、<%#绑定表达式2 %>...放在像Repeater、DataList、GridView这样的控件的模板中。
3.可以将数据绑定表达式包含在JavaScript代码中,从而实现在JavaScript中调用C#的方法。
三、数据绑定表达式类型
1.绑定变量。变量可以作为数据源来提供数据。注意,这个变量必须为公有字段或受保护字段,即访问修饰符为public或protected。eg:<%#变量名%>
2.绑定服务器控件的属性值,可以是服务器控件的属性值。
3.绑定方法。有返回值的方法可以作为数据源来提供数据。语法格式为:<%# 方法名(参数表)%>
4.绑定数组对象。数据对象可以作为数据源来提供数据。语法格式为:<%# 数据名 %>
5.绑定集合或列表列表控件、GridView等服务器控件可用集合作为数据源,这些控件只能绑定到支持IEnumerable、ICollection或IListSource接口的集合上。常见的是绑定ArrayList、Hashtable、DataView和DataReader。语法格式为:<%# 集合名 %>
6.绑定表达式。语法格式为:<%# 表达式 %>
7.绑定数据表的字段。字段可以是用Eval取得的数据表的字段,相当于数据库中某个表或者视图中的一行记录,而一行可以有多列。
注意:如果数据绑定表达式作为属性的值,只要数据绑定表达式中没有出现双引号,那么<%# 数据绑定表达式 %>的最外层用双引号或者单引号都可以。如果数据绑定表达式中出现双引号,则<%# 数据绑定表达式 %>的最外层最好要用单引号。
ASP.NET实现数据绑定的更多相关文章
- 【转】ASP.NET常用数据绑定控件优劣总结
转自:http://www.cnblogs.com/Olive116/archive/2012/10/24/2736570.html ASP.NET常用数据绑定控件优劣总结 本文的初衷在于对Asp ...
- ASP.NET常用数据绑定控件优劣总结
本文的初衷在于对Asp.net常用数据绑定控件进行一个概览性的总结,主要分析各种数据绑定控件各自的优缺点,以便在实际的开发中选用合适的控件进行数据绑定,以提高开发效率. 因为这些数据绑定控件大部分都已 ...
- ASP.NET 前端数据绑定---<%#%>及Eval()的使用
ASP.NET 前端html代码中会经常出现的<%%>的代码,里面的文本其实就是不能直接输出到客户端浏览器的文本,是需要服务器解释的. 在ASP中,<%%>里面的文本是vbsc ...
- ASP.Net之数据绑定
---恢复内容开始--- [概述]数据绑定是指从数据源获取数据或向数据源写入数据.简单的数据绑定可以是对变量或属性的绑定,比较复杂的是对ASP.NET数据绑定控件的操作 1.简单的属性绑定 基于属性的 ...
- 027. asp.net中数据绑定控件之 GridView控件
GridView控件支持下面的功能: 绑定至数据源控件, 如SqlDataSource 内置排序功能 内置更新和删除功能 内置分页功能 内置行选择功能 可以编程方式访问GridView对象模型以动态设 ...
- ASP.NET中数据绑定表达式
今天谈下.NET中的数据绑定表达式.数据绑定表达式必须包含在<%#和%>字符之间.格式如下: <tagprefix:tagname property='<%# data-bin ...
- 《ASP.NET》数据绑定—DataList实践篇
上篇文章大概讲了DataList的一些基础知识,掌握这些知识在将来的应用中起到非常大的作用,如今我们就開始讲上篇文章中说的基础知识做一个小样例. 首先,我机子的数据库中有一张person表.例如以下图 ...
- 《ASP.NET》数据绑定—DataList
DataList控件是.NET中的一个控件.DataList控件以表的形式呈现数据(在属性生成器中能够编辑),通过该控件,您能够使用不同的布局来显示数据记录(使用模板编辑).比如,将数据记录排成列或行 ...
- ASP.NET LinqDataSource数据绑定后,遇到[MissingMethodException: 没有为该对象定义无参数的构造函数。]问题。
问题出现的情形:LinqDataSource数据绑定到DetailsView或GridView均出错,错误如下: “/”应用程序中的服务器错误. 没有为该对象定义无参数的构造函数. 说明: 执行当前 ...
随机推荐
- (转)通过扩展让ASP.NET Web API支持JSONP
原文地址:http://www.cnblogs.com/artech/p/3460544.html 同源策略(Same Origin Policy)的存在导致了“源”自A的脚本只能操作“同源”页面的D ...
- HTML inline 与block元素
行标签:内容撑开宽度,不可以控制宽和高,它的宽和高随标签里的内容而改变 块标签:撑满行(默认) ,可以用样式控制其宽和高 但行标签 img,textarea,select,input 是可以设置宽和高 ...
- Spring Cache介绍和使用
Spring Cache 缓存是实际工作中非经常常使用的一种提高性能的方法, 我们会在很多场景下来使用缓存. 本文通过一个简单的样例进行展开,通过对照我们原来的自己定义缓存和 spring 的基于凝视 ...
- Delphi webbrowser 的一些方法
因为一个任务,最近几天一直在研究Webbrowser的相关功能,下面是收集到的一些方法 //根据URL获取请求Headerfunction GetAllHeaders(URL: string): st ...
- [LeetCode 题解]: Insertion Sort List
Sort a linked list using insertion sort. 题目要求:链表的插入排序,由于没有时间复杂度的要求,可以直接循环操作. /** * Definition for si ...
- vmware之VMware Remote Console (VMRC) SDK(二)
在上篇文章中,我们用winform结合vmware的api做了一个demo,在vmrc sdk中作为plugin单独打包出来vmware-vmrc-win32-x86.exe,上篇文章的demo只能基 ...
- BP神经网络研究(一)
本随笔参考文章:<BP神经网络详解与实例>(链接: https://pan.baidu.com/s/1e2niIvD9KtLXEqwXtgdXxw 密码: vb8d) 本随笔原创,转发请注 ...
- day13学python 协程+事件驱动
协程+事件驱动 协程 (微线程)--用处多,重点 当调度切换时 靠寄存器上下文和栈保存 要使用时再调用(即可不会因io传输数据卡壳 从而耗时无法继续进行)实现并行 优缺点: 优点: 1 无需同线程上下 ...
- php数据库编程---mysqli扩展库
1,mysqli扩展库允许我们访问MySQL数据库,并对MySql数据库进行curd操作.Mysqli扩展库比mysql扩展库加强了. 2,mysqli扩展库和mysql扩展库的比较 (1) mysq ...
- Linux 下 Wordpress "Not Found" 解决
无题.仅仅记录解决过程: 原因是WEB目录下的.htaccess文件需要开启伪静态才能将文件重定向到其他地方.