欢迎投稿

今日深度:

一句代码实现批量数据绑定 上(1)(3)

二、一句代码实现批量数据绑定

现在我们就来演示如何通过我们定义的DataBinder实现“一句代码的数据批量绑定”,而作为数据源就是我们上面定义的Customer对象。我们先来设计我们的页面,下面是主体部分的HTML,这是一个表格。需要注意的是:所有需要绑定到Customer对象的空间都和对应的属性具有相同的ID。

  1. <table>     
  2.  <tr>     
  3.      <td style="width:20%;text-align:right">ID:</td>     
  4.      <td><asp:Label ID="ID" runat="server"></asp:Label></td>     
  5.  </tr>     
  6.   <tr>     
  7.      <td style="width:20%;text-align:right">First Name:</td>     
  8.      <td><asp:TextBox ID="FirstName" runat="server"></asp:TextBox></td>     
  9.  </tr>    
  10.   <tr>    
  11.      <td style="width:20%;text-align:right">Last Name:</td>    
  12.      <td><asp:TextBox ID="LastName" runat="server"></asp:TextBox></td>    
  13.  </tr>    
  14.   <tr>    
  15.      <td style="width:20%;text-align:right">Gender:</td>    
  16.      <td>    
  17.          <asp:RadioButtonList ID="Gender" runat="server" RepeatDirection="Horizontal">    
  18.              <asp:ListItem Text="Male"   Value = "Male" />    
  19.              <asp:ListItem Text="Female" Value = "Female" />    
  20.          </asp:RadioButtonList>    
  21.      </td>    
  22.  </tr>    
  23.   <tr>    
  24.      <td style="width:20%;text-align:right">Age:</td>    
  25.      <td><asp:TextBox ID="Age" runat="server"></asp:TextBox></td>    
  26.  </tr>    
  27.   <tr>    
  28.      <td style="width:20%;text-align:right">Birthday:</td>    
  29.      <td><asp:TextBox ID="Birthday" runat="server" Width="313px"></asp:TextBox></td>    
  30.  </tr>    
  31.   <tr>    
  32.      <td style="width:20%;text-align:right">Is VIP:</td>    
  33.      <td><asp:CheckBox ID="IsVip" runat="server"></asp:CheckBox></td>    
  34.  </tr>    
  35.   <tr>     
  36.      <td colspan="2" align="center">    
  37.          <asp:Button ID="ButtonBind" runat="server" Text="Bind" onclick="ButtonBind_Click" />    
  38.      </td>    
  39.  </tr>    
  40. /table> 

为了编成方便,将DataBinder对象作为Page类型的一个属性,该属性在构造函数中初始化。

  1. public partial class Default : System.Web.UI.Page  
  2. {  
  3.     public Artech.DataBinding.DataBinder DataBinder { get; private set; }  
  4.     public Default()  
  5.     {  
  6.         this.DataBinder = new Artech.DataBinding.DataBinder();  
  7.     }  

然后我将数据绑定操作实现的Bind按照的Click事件中,对应所有的代码如下所示——真正的用于数据绑定的代码只有一句。

  1. protected void ButtonBind_Click(object sender, EventArgs e)  
  2. {  
  3.     var customer = new Customer  
  4.     {  
  5.         ID          = Guid.NewGuid().ToString(),  
  6.         FirstName   = "Zhang",  
  7.         LastName    = "San",  
  8.         Age         = 30,  
  9.         Gender      = "Male",  
  10.        BirthDay    = new DateTime(1981, 1, 1),  
  11.        IsVip       = true 
  12.    };  
  13.    this.DataBinder.BindData(customer, this);  

在浏览器中打开该Web页面,点击Bind按钮,你会发现绑定的数据已经正确显示在了对应的控件中:

 


www.htsjk.Com true http://www.htsjk.com/shujukujc/18893.html NewsArticle 二、一句代码实现批量数据绑定 现在我们就来演示如何通过我们定义的DataBinder实现一句代码的数据批量绑定,而作为数据源就是我们上面定义的Customer对...
评论暂时关闭