作者:
dragonpig 來源:
博客園 發布時間: 2011-01-29 16:54 閱讀: 1004 次 推薦: 0
原文鏈接 [收藏]
Data Binding似乎是ASP.NET老掉牙的節目,無非Eval之流。其實稍作加工就能使其脫胎換骨。
在代碼中加入:
//推薦放在基類
protected virtual object ExpHelper<TEntity, TREsult>(Func<TEntity, TREsult> func)
{
var itm = GetDataItem();
return func((TEntity)itm);
}
//Student是數據類
protected object Stu<TResult>(Func<Student, TResult> func)
{
return ExpHelper<Student, TResult>(func);
}
這樣在ASPX頁面就可以用強類型的Eval了
<table>
<asp:Repeater runat="server">
<ItemTemplate>
<tr>
<td>
<%#Stu(_=>_.Id)%>
</td>
<td>
<%#Stu(_=>_.User.Name)%>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
由于不是反射,性能大為提升并且語法具有intellisense,很酷吧。
我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!我要發布!!
文章列表