惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

MyScale Blog
MyScale Blog
人人都是产品经理
人人都是产品经理
云风的 BLOG
云风的 BLOG
小众软件
小众软件
F
Fortinet All Blogs
爱范儿
爱范儿
WordPress大学
WordPress大学
N
Netflix TechBlog - Medium
Recent Announcements
Recent Announcements
Google DeepMind News
Google DeepMind News
C
Check Point Blog
博客园 - 聂微东
D
Docker
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
aimingoo的专栏
aimingoo的专栏
Vercel News
Vercel News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
A
About on SuperTechFans
博客园 - 【当耐特】
Microsoft Azure Blog
Microsoft Azure Blog
B
Blog
宝玉的分享
宝玉的分享
Jina AI
Jina AI
H
Hackread – Cybersecurity News, Data Breaches, AI and More

博客园 - 飞越梦想

简单调用VS自带的数据源选择对话框实现数据库连接字符串配置 Lucene.Net 系列 [转]lucene学习笔记三 各种query [转]JS获取屏幕,浏览器,网页高度宽度 第一次离线写Blog,先上个图先 [原创]如何判断线程池中所有的线程是否已经完成 模态窗口中提交表单时总在新窗口打开的解决办法 获取滚动条高度 JS获取select-option text extjs form中隐藏textfield的方法 JavaScript 常用函数 SQL日期格式化应用大全 [导入]Enterprise Library 3.1 帮助文档中文翻译 [导入]7.1.1 [Enterprise Library]缓存应用程序块场景和目标 [导入]第 7 章 缓存应用程序块 [导入]4.3 [Enterprise Library]定制中等信任策略 [导入]4.2 [Enterprise Library]版本 [导入]4.1 为部署准备 Enterprise Library [导入]第 4 章 部署 Enterprise Library
[转]ASP.NET 数据绑定常用代码
飞越梦想 · 2009-12-07 · via 博客园 - 飞越梦想

      用DataBinder.eval 绑定不必关心数据来源(Dataread或dataset)。不必关心数据的类型eval会把这个数据对象转换为一个字符串。在底层绑定做了很多工作,使用了反射性能。正因为使用方便了,但却影响了数据性能。当于dataset绑定时,DataItem其实式一个DataRowView(如果绑定的是一个数据读取器(dataread)它就是一个IdataRecord。)因此直接转换成DataRowView的话,将会给性能带来很大提升。
使用时注意:1.注意字段名的大小写(要特别注意)。如果和查询的不一致,在某些情况下会导致比<%# DataBinder.Eval(Container.DataItem, "字段名") %>还要慢。2.如果想进一步提高速度,可采用<%# ((System.Data.DataRowView)Container.DataItem)[0] %>的方法。不过其可读性不高。

//以DataSet做数据源时

//正常情况(C#)

<%# ((System.Data.DataRowView)Container.DataItem)["Title"] %>

//绑定日期字段格式字符串

<%# Convert.ToDateTime(((System.Data.DataRowView)Container.DataItem)

["FbTime"]).ToString("yyyy年MM月dd日") %>

<%# DataBinder.Eval(Container, "DataItem.FbTime","{0:yyyy年MM月dd日}") %>

//字符串绑定超过指定长度截断

<%# DataBinder.Eval(Container.DataItem, "Text").ToString().Trim().Length>7?

DataBinder.Eval(Container.DataItem, "Text").ToString().Trim().Substring

(0,7):DataBinder.Eval(Container.DataItem, "Text").ToString().Trim() %>

//价格格试化为2位小数

<%# Convert.ToDecimal(((System.Data.DataRowView)Container.DataItem) ["Price"]).ToString("F2") %>

<%# DataBinder.Eval(Container, "DataItem.Price","{0:F2}") %>
'VB.net中价格格式化后判断
<%# IIf(DataBinder.Eval(Container.DataItem, "price","{0:F2}")="0.00","面议",DataBinder.Eval(Container.DataItem, "price","{0:F2}") "万") %>

'Vb.net常规
<%# Ctype(Container.DataItem,DataRowView).Row("Title") %>

http://www.cnblogs.com/wintersun/archive/2006/08/11/474135.html