大家说直接将数据库查询结果用Label.text显示出来的效率如何?

时间:2020-12-27 11:01:32
要是我的数据库查询结果为30条(也可能更多),然后我用for循环的方式将这些结果与html语句集合起来,比如查询结果在一个DataTable DT中,然后循环这样

for(int i=0;i<30;i++)
{
    Label.text +="<tr><td>" + DT.Rows[i][0].ToString().Trim() + "</td></tr>";
}

当然实际应用html以及数据源的显示要更复杂一些,请问这样的效率与使用DataGrid/DataList/Repeater等的效率哪个好呢?

8 个解决方案

#1


大概节省零点3、4秒钟。

#2


零点3、4秒钟?
那岂不是性能能提高不少吗?那大家为什么都喜欢用DataGrid/DataList/Repeater(也包括我)等显示数据呢?我个人觉得DataGrid/DataList/Repeater什么的其实并不好用,当初是怕人家说我外行才用的,可是用的时候发现很多扩展功能实现起来实在是麻烦(可能是我功力不够),不如直接用for的方法自己绘制,倒是省事不少,虽然现在不怕人家说我外行,但因为没有经过压力、效率等测试,怕出问题!

#3


up

#4


给你这些控件本身就是为了缩短开发周期
如果你觉得自己写循环之类的更方便当然也没必要使用控件

#5


显然,
这种性能“损失”是可以忽略的

#6


实际上,如果你想直接输出,写入一个StringBuilder,然后再页面的Render方法中写入HtmlWriter就行了。如果还想“优化”,干脆连Render也不要写,直接 Response.Write(theoutput);Response.End();!最后,如果想优化速度,可以先抛弃asp.net,接下来抛弃web服务、抛弃javascript和html、抛弃浏览器、最后无止境地开发软件而不是提交应用。

总的来说,只要你对用户的需求说了算,你肯定能够专心优化速度。

对于大多数PM来说,要考虑到的是需求是会变化的,例如需要给输出的东西增加一个分页功能、编辑功能、点击列标题排序功能等等。PM要考虑大事,而不是应付眼前。好的技术是因为它能适用于变化的需求、客户的需求,而不是由技术人员的个人想法来规定需求。

#7


PM 知道将来什么才是代价最高的。

#8


我不太喜欢用控件,不过有的时候不需要太复杂的显示数据时候我会使用DAGAGRID控件,如果相对显示要求多点的时候我会选择LABEL,,呵呵个人有个人的喜好,,主要看你喜欢哪种数据显示方法了~~,不过我感觉在效率上没有VS内置的控件显示效率高~~`

#1


大概节省零点3、4秒钟。

#2


零点3、4秒钟?
那岂不是性能能提高不少吗?那大家为什么都喜欢用DataGrid/DataList/Repeater(也包括我)等显示数据呢?我个人觉得DataGrid/DataList/Repeater什么的其实并不好用,当初是怕人家说我外行才用的,可是用的时候发现很多扩展功能实现起来实在是麻烦(可能是我功力不够),不如直接用for的方法自己绘制,倒是省事不少,虽然现在不怕人家说我外行,但因为没有经过压力、效率等测试,怕出问题!

#3


up

#4


给你这些控件本身就是为了缩短开发周期
如果你觉得自己写循环之类的更方便当然也没必要使用控件

#5


显然,
这种性能“损失”是可以忽略的

#6


实际上,如果你想直接输出,写入一个StringBuilder,然后再页面的Render方法中写入HtmlWriter就行了。如果还想“优化”,干脆连Render也不要写,直接 Response.Write(theoutput);Response.End();!最后,如果想优化速度,可以先抛弃asp.net,接下来抛弃web服务、抛弃javascript和html、抛弃浏览器、最后无止境地开发软件而不是提交应用。

总的来说,只要你对用户的需求说了算,你肯定能够专心优化速度。

对于大多数PM来说,要考虑到的是需求是会变化的,例如需要给输出的东西增加一个分页功能、编辑功能、点击列标题排序功能等等。PM要考虑大事,而不是应付眼前。好的技术是因为它能适用于变化的需求、客户的需求,而不是由技术人员的个人想法来规定需求。

#7


PM 知道将来什么才是代价最高的。

#8


我不太喜欢用控件,不过有的时候不需要太复杂的显示数据时候我会使用DAGAGRID控件,如果相对显示要求多点的时候我会选择LABEL,,呵呵个人有个人的喜好,,主要看你喜欢哪种数据显示方法了~~,不过我感觉在效率上没有VS内置的控件显示效率高~~`