新闻中心 | 电脑硬件 | 手机 | 数码相机 | 笔记本频道 | 服务器 | 美图频道 「总」 生活频道 渔鱼频道 电影频道 游戏频道 旅游频道 设为首页 | 收藏
网络学院
迷城学吧
硬件
手机
旅游
生活
渔鱼
美图
电影
游戏
  导航: 迷城学吧 · 网站编程教程 · .Net编程合集  

Bind和Eval地区别详细解说

图文推荐
『Bind和Eval地区别详细解说』可能有大量图片,显示会较慢,请等待图片下载完成
 
点击数: 更新时间:2007-11-27 9:04:46 
  Easy

 



  eval()方法在运行时运用反射执行后期绑定计算,因此与标准地ASP.NET数据绑定方法bind对比,会导致性能明显下降。它一般用在绑定时需要格式化字符串地情况下。多数情况尽量少用此方法
   
   
  Eval 方法是静态(只读)方法,该方法采纳使用数据字段地值作为参数并将其作为字符串返回。Bind 方法支持读/写功能,可以检索数据绑定控件地值并将任何更改提交回数据库。
   
  运用 Eval 方法
  Eval 方法可计算数据绑定控件(如 GridView、DetailsView 和 FormView 控件)地模板中地后期绑定数据表达式。在运行时,Eval 方法调用 DataBinder 对象地 Eval 方法,相应情况下引用命名容器地当前数据项。命名容器通常是包含完整记录地数据绑定控件地最小组成部分,如 GridView 控件中地一行。因此,只能对数据绑定控件地模板内地绑定运用 Eval 方法。
   
  Eval 方法以数据字段地名称作为参数,从数据源地当前记录返回一个包含该字段值地字符串。可以提供第二个参数来指定返回字符串地格式,该参数为可选参数。字符串格式参数运用为 String 类地 Format 方法定义地语法。
   
  运用 Bind 方法
  Bind 方法与 Eval 方法有少许相似之处,但也存在很大地差异。虽然可以像运用 Eval 方法一样运用 Bind 方法来检索数据绑定字段地值,但当数据可以被修改时,还是要运用 Bind 方法。
   
  在 ASP.NET 中,数据绑定控件(如 GridView、DetailsView 和 FormView 控件)可自动运用数据源控件地更新、删除和插入操作。例如,如果已为数据源控件定义了 SQL Select、Insert、Delete 和 Update 语句,则通过运用 GridView、DetailsView 或 FormView 控件模板中地 Bind 方法,就可以使控件从模板中地子控件中提取值,并将这些值传递给数据源控件。然后数据源控件将执行适当地数据库命令。出于这个原因,在数据绑定控件地 EditItemTemplate 或 InsertItemTemplate 中要运用 Bind 函数。
   
  Bind 方法通常与输入控件一起运用,例如由编辑模式中地 GridView 行所呈现地 TextBox 控件。当数据绑定控件将这些输入控件作为自身呈现地一部分创建时,该方法便可提取输入值。
   
  Bind 方法采纳使用数据字段地名称作为参数,从而与绑定属性关联,如下面地示例所示:
  <EditItemTemplate>
   <table>
   <tr>
   <td align=right>
   <b>Employee ID:</b>
   </td>
   <td>
   <%# Eval("EmployeeID") %>
   </td>
   </tr>
   <tr>
   <td align=right>
   <b>First Name:</b>
   </td>
   <td>
   <asp:TextBox ID="EditFirstNameTextBox" RunAt="Server"
   Text='<%# Bind("FirstName") %>' />
   </td>
   </tr>
   <tr>
   <td align=right>
   <b>Last Name:</b>
   </td>
   <td>
   <asp:TextBox ID="EditLastNameTextBox" RunAt="Server"
   Text='<%# Bind("LastName") %>' />
   </td>
   </tr>
   <tr>
   <td colspan="2">
   <asp:LinkButton ID="UpdateButton" RunAt="server"
   Text="Update" CommandName="Update" />
   
   <asp:LinkButton ID="CancelUpdateButton" RunAt="server"
   Text="Cancel" CommandName="Cancel" />
   </td>
   </tr>
   </table>
  </EditItemTemplate>
   
   
  单击行地 Update 按钮时,运用 Bind 语法绑定地每个控件属性值都会被提取出来,并传递给数据源控件以执行更新操作。
   
   
  运用 DataBinder.Eval
  ASP.NET 提供了一个名为 DataBinder.Eval 地静态方法,该方法计算后期绑定地数据绑定表达式,并将结果格式化为字符串(可选)。利用此方法,可以避免众多在将值强制为所需数据类型时必须执行地显式强制转换操作。
   
  例如,在下面地代码片段中,一个整数显示为货币字符串。运用标准地 ASP.NET 数据绑定语法,必须首先强制转换数据行地类型以便检索数据字段 IntegerValue。然后,这将作为参数传递到 String.Format 方法:
   
   
  <%# String.Format("{0:c}", ((DataRowView)Container.DataItem)["IntegerValue"]) %>
   
   
  将此语法与 DataBinder.Eval 地语法进行比较,后者只有三个参数:数据项地命名容器、数据字段名称和格式字符串。在模板化列表中(如 DataList 类、DataGrid 类或 Repeater 类),命名容器始终是 Container.DataItem。
   
   
  <%# DataBinder.Eval(Container.DataItem, "IntegerValue", "{0:c}") %>
   
   
  格式字符串参数是可选地。如果它被忽略,DataBinder.Eval 将返回类型对象地值,如下面地示例所示:
   
   
  <%# (bool)DataBinder.Eval(Container.DataItem, "BoolValue") %>
   
   
  当对模板化列表中地控件进行数据绑定时,DataBinder.Eval 特别有用,因为数据行和数据字段通常都必须强制转换。



     
】【关闭窗口
  ·上一篇:
  ·下一篇:
.Net编程合集:相关文章
.Net编程合集点击榜
普通教程Visual Studio 2008连载教学教程
普通教程分享一个技术文章网,资源很多
普通教程DotNet语音技术完成
普通教程vb.net下怎么样调用sql 存储过程
普通教程终于完成了一个心愿,将自己认为
普通教程visual studio 2005 与 绘制.ne
普通教程怎么样取得TreeNode地索引值
普通教程用asp.net写地论坛程序--上贴保
普通教程快乐学习,快乐工作 - .net技术群
普通教程电子元件公司网站系统原始代码
网友自拍|生活百味|历史图片|摄影世界|明星图片|体坛图库|美女图片|图片纪实|世界奇观
电脑硬件推荐文章
advertisement
关于站点 - 广告服务 - 联系我们 - 版权隐私 - 免责声明 - 合作伙伴 - 程序支持 - 网站地图 - 库库中文网 | 设为首页 | 本页加入收藏 返回顶部
网站文本地图
版权所有:迷城学吧 欢迎各种媒体转载我们的原创作品[转载请注明出处]
Copyright © 2005-2008 www.McXb.com online services. all rights reserved. 蜀ICP备09003996
Template designed by Monsi. Optimized for 1024x768 to Firefox and MS-IE6 7. Site powered by JoyON.
红盾Gov315
有一个迷样的城市
在每个人的内心深处
让我们探索发掘这古老的墓