当前位置:编程学习 > asp >>

ASP.NET数据绑定

1 数据绑定表达式

<asp:Literal id="litEval1" runat="server" Text='<%Eval("userName")%>' />
<%# Eval("出生日期","{0:d}")%>
<a href='<%# Eval("userId","Default.aspx?id={0}")%>'><%# Eval("userName") %></a>
<a href='<%# string.Format("Default.aspx?id={0}&role={1}", Eval("userId"),Eval("userRole"))%>'><%# Eval("userName") %></a>


绑定到后台代码中的字符串变量(必须是public类型)
1)后台代码
public string name="寂寞沙洲";
2)前台HTML代码
<p>姓名:<%#name%></p>


绑定到方法:
<%# GetUserPhoto(Eval("PhotoPath")) %>
public string GetUserPhoto(object photoPath)
{
  if (photoPath == DBNull.Value)<%#((DataRowView)Container.DataItem)["字段名"] %>
绑定到DataView,DataTable,DataSet
  {
      return "<img src='Images/none.gif'>";
  }
  else
  {
    return "<img src='Upload/" +photoPath.ToString() + "'>";
  }
}


绑定到DataList数据项模板
<ASP:DataList ID="DataList1" RepeatColumns="5" Width="600" runat="server" DataSourceID="ObjectDataSource1">
 <ItemTemplate>
  <ASP:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("PhotoID", "PhotoFormViewPlain.ASPx?ID={0}") %>'>
  <ASP:Image ID="Image1" Runat="server" ImageUrl='<%# Eval("FileName", "images/thumbs/{0}") %>' /></ASP:HyperLink>
  <ASP:Label ID="CaptionLabel" runat="server" Text='<%# Eval("Caption") %>' />
 </ItemTemplate>
</ASP:DataList>

2 Eval与Bind方法区别

Eval是单向绑定,不能将修改后的数据写回数据源,而Bind是双向绑定,能够将修改后的数据写回数据源。

拣尽寒枝不肯栖,寂寞沙洲冷。


摘自 寂寞沙洲
补充:Web开发 , ASP.Net ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,