仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 798|回复: 8
打印 上一主题 下一主题

[学习教程] 来一篇关于NET的巧用DataColumn的Expression属性复制列

[复制链接]
简单生活 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 14:24:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
既然话题已经抄起,我打算今晚发篇博文再引导一下舆论方向,使它再火两天,抛砖引玉,而且赵劼先生一直在跟帖,使.NET阵营的我感到万分难得。之前在复制DataTable某列的值的时分,老是轮回DataTable的一切行,逐行逐行的赋值,以下代码:

//代码中假定dt中已存在了列A
DataTabledt=GetDataTable();
DataColumncol=newDataColumn();
col.ColumnName="B";
dt.Columns.Add(col);
foreach(DataRowdrindt.Rows)
{
dr["B"]=dr["A"];
}



一向偶尔的时机发然了DataColumn的Expression属性,检察了Expression属性的感化了后,发明复制列的功效就简化多了,以下代码:

//代码中假定dt中已存在了列A
DataTabledt=GetDataTable();
DataColumncol=newDataColumn();
col.ColumnName="B";
col.Expression="A";
col.DataType=dt.Columns["A"].DataType;
dt.Columns.Add(col);


实在Expression的属性的功效远远不至这个,它能够做统计列,排行列,也能够做行考证,它撑持的函数也是对照的丰厚,人人有乐趣好好上彀查查吧。我认为,可以通过更加简单的首次编译,而增加第二次编译的负担,来提高java的运行效率。只是将java源代码进行简单的等价转换,而不假设编译成某种虚拟机器的目标格式,而由本地编译器针对性的二次编译。
精灵巫婆 该用户已被删除
沙发
发表于 2015-1-18 14:02:33 | 只看该作者
现在主流的网站开发语言无外乎asp、php、asp.net、jsp等。
第二个灵魂 该用户已被删除
板凳
发表于 2015-1-24 16:36:03 | 只看该作者
asp.net空间的支持有:ASP.NET1.1/虚拟目录/MicrosoftFrontPage2000扩展/CDONTS,同时他的网站上也提供了Asp.net的使用详解和程序源代码,相信对使用ASP.NET编程的程序员来说会非常有用哦!
透明 该用户已被删除
地板
发表于 2015-2-2 11:17:18 | 只看该作者
关于ASP.NET功能上,ASP.NET比微软以前的ASP(96年出现)有更强大的library,更好的稳定性。ASP.NET可以使用.NETFramework中所有组件(也就是说.NET能实现的,ASP.NET一样能实现)。
不帅 该用户已被删除
5#
发表于 2015-2-7 18:53:23 | 只看该作者
ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象。
爱飞 该用户已被删除
6#
发表于 2015-2-23 03:47:31 | 只看该作者
最强的技术支持WebService,而且有.NET的所有library做后盾。而且ASP.NET在.NET3.5中还有微软专门为AJAX开发的功能--ASP.NETAJAX。
愤怒的大鸟 该用户已被删除
7#
发表于 2015-3-7 07:00:33 | 只看该作者
由于CGI程序每响应一个客户就会打开一个新的进程,所以,当有多个用户同时进行CGI请求的时候,服务器就会打开多个进程,这样就加重了服务器的负担,使服务器的执行效率变得越来越低下。
若相依 该用户已被删除
8#
发表于 2015-3-14 16:02:26 | 只看该作者
以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。
海妖 该用户已被删除
9#
发表于 2015-3-21 12:47:28 | 只看该作者
Servlet却在响应第一个请求的时候被载入,一旦Servlet被载入,便处于已执行状态。对于以后其他用户的请求,它并不打开进程,而是打开一个线程(Thread),将结果发送给客户。由于线程与线程之间可以通过生成自己的父线程(ParentThread)来实现资源共享,这样就减轻了服务器的负担,所以,JavaServlet可以用来做大规模的应用服务。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 13:39

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表