【总结】- Eval与Bind用法

1、基础认识

  • Eval与Bind是两个方法,都可以实现前台数据绑定。
  • Bind方法(双向数据绑定)即能把数据绑定到控件,又能把数据变更提交到数据库
  • Eval方法(单向数据绑定)它实现了数据读取的自动化,并能对绑定字段进行格式化显示,但是没有实现数据写入自动化

2、Eval的用法

Eval 方法以数据字段的名称作为参数,从数据源的当前记录返回一个包含该字段值的字符串。可以提供第二个参数(可选参数)来指定返回字符串的格式,如以下牛腩中的应用:

//绑定id,与姓名
<li><a href='list.aspx?caid=<%# Eval("id") %>'><%# Eval("name") %></a></li>

Eval可以用于计算数据绑定控件(如 GridView、DetailsView 和 FormView 控件)的模板中的后期绑定数据表达式,在运行时,Eval 方法调用 DataBinder 对象的 Eval 方法,同时引用命名容器的当前数据项。命名容器通常是包含完整记录的数据绑定控件的最小组成部分,如 GridView 控件中的一行。因此,只能对数据绑定控件的模板内的绑定使用 Eval 方法;

以下以GridView应用举例:

<asp:GridView ID="gvNewNews" runat="server" AutoGenerateColumns="False" GridLines="None" >
    <Columns>       
        <asp:TemplateField HeaderText="新闻标题">                          
            <ItemTemplate>
                <!--设置新闻标题链接,鼠标移上显示完整标题,设置超过长度标题显示样式-->
                <a href='newscontent.aspx?newsid=<%# Eval("id")%>' target="_blank" title='<%# Eval("title") %>'><%# StringTruncat (Eval("title").ToString(),16,"...") %></a>
            </ItemTemplate>
        </asp:TemplateField>    
    </Columns>

</asp:GridView>

3、Bind的用法

Bind 方法采用数据字段的名称作为参数,与绑定属性关联;

Bind 方法通常与输入控件一起使用,例如由编辑模式中的 GridView 行所呈现的 TextBox 控件。当数据绑定控件将这些输入控件作为自身呈现的一部分创建时,该方法便可提取输入值;

在 ASP.NET 中,数据绑定控件(如 GridView、DetailsView 和 FormView 控件)可自动使用数据源控件的更新、删除和插入操作;如果已经为数据源控件定义了Select、Insert、Delete 和 Update 语句,则通过使用 GridView、DetailsView 或 FormView 控件模板中的 Bind 方法,就可以使控件从模板中的子控件中提取值,并将这些值传递给数据源控件。然后数据源控件将执行适当的数据库命令,在数据绑定控件的ItemTemplate 或 插入ItemTemplate 中要使用 Bind 函数;

以下以GridView应用举例:

<asp:GridView ID="gvNewNews" runat="server" AutoGenerateColumns="False" GridLines="None" >
    <Columns>  
        <asp:TemplateField HeaderText="发布时间" HeaderStyle-CssClass="th_time" ItemStyle-CssClass="td_time">
            <ItemTemplate>
                <asp:Label ID="Label3" runat="server" Text='<%# Bind("createtime") %>'></asp:Label>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>

</asp:GridView>

对于两个方法的用法有了一个表向的认识,应用中学习,及时总结是个好习惯,希望我可以养成;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 14
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值