自定义的Repeat类
因为一些依据性不强的道听途说以及个人偏见, 很不喜欢.NET的服务端控件. 主要是冗余代码问题以及一种强烈的根深蒂固的DIY癖.
工作中经常需要将大量的字段信息以一定格式显示在页面上. 通常是Bind到一个DataView或Repeat控件中. 围绕着易用性, 改成如下调用方式:
页面文件样式:
<table>
<tbody id="tbodyList" runat="server">
<tr>
<td>{$id}</td>
<td>{$date:"yyyy-MM-dd"}</td>
<td><a href="?customer_id={$customer_id}">{$customer:text}</a></td>
</tr>
</tbody>
</table>
调用方式:
DataTable dtItems = db.GetTable(cmd); //此处获得列表数据
StringFormat.BindControl(this.tbodyList, dtItems);
//StringFormat 即类名, 此处调用了其静态方法BindControl
//字段名对应前台模板中的 {$field}, 可以规定格式为 {$field:"format"}
//此处的format可以自定义(自己的类当然是自定义)
//我常用的就是日期格式, 数字格式, 大小写, 或者text(经过Server.HtmlEncode的)
觉得想法不错的朋友欢迎顶顶, 觉得垃圾的也欢迎丢西红柿.
实现代码我想园子里大部分人都很容易就能写出来, 这里就不写出来班门弄斧了, 主要是跟大家分享下想法.

浙公网安备 33010602011771号