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均出错,错误如下: “/”应用程序中的服务器错误. 没有为该对象定义无参数的构造函数. 说明: 执行当前 ...
随机推荐
- 简单引入logback
pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w ...
- [转][译] 存储引擎原理:LSM
原译文地址:http://www.tuicool.com/articles/qqQV7za http://www.zhihu.com/question/19887265 http://blog.csd ...
- 通过面试题学习零散知识:Java面试题整理
一.如何看待面试题 对于喜欢学习的开发者来说,我们抛开工作和生活的时间,剩余的时间并不多,如果都用于学习的话,也不可能学的下所有感兴趣的技术点,精力也跟不上,我是深感如是.而面试题一般都是零碎的知识 ...
- (转)jQuery插件编写学习+实例——无限滚动
原文地址:http://www.cnblogs.com/nuller/p/3411627.html 最近自己在搞一个网站,需要用到无限滚动分页,想想工作两年有余了,竟然都没有写过插件,实在惭愧,于是简 ...
- Ubuntu 将应用程序 固定到快快速启动栏(以Sublime为例)
因为Sublime Text并不是需要安装,所以缺少Ubuntu桌面运行的一些基本配置,比如不能将它加入桌面侧边的启动器. 而Ubuntu上也没有快捷方式的说法,而通过软件中心安装的软件就有图标,并能 ...
- 20145233《网络对抗》Exp5 MSF基础应用
20145233<网络对抗>Exp5 MSF基础应用 实验问题思考 什么是exploit,payload,encode exploit是发现了的可以利用的安全漏洞或者配置弱点,这类模块存储 ...
- C#中使用Redis学习二 在.NET4.5中使用redis hash操作
上一篇>> 摘要 上一篇讲述了安装redis客户端和服务器端,也大体地介绍了一下redis.本篇着重讲解.NET4.0 和 .NET4.5中如何使用redis和C# redis操作哈希表. ...
- WEB应用从服务器主动推送的方法
1.短轮询 2.长轮询 3.iframe 4.sse 5.Web Scoket
- Autofac的简单使用
今天记录一下学习Autofac的过程. 之前对IoC与DI一直很迷糊,今天研究了前辈们的文章后,才对IoC和DI有了一个初步的了解.感谢前辈们的无私奉献! 文章地址: 依赖注入和控制反转的理解,写的太 ...
- 一行代码搞定Dubbo接口调用
本文来自网易云社区 作者:吕彦峰 在工作中我们经常遇到关于接口测试的问题,无论是对于QA同学还是开发同学都会有远程接口调用的需求.针对这种问题我研发了一个工具包,专门用于远程Dubbo调用,下面就让我 ...