摘要: 昨天拜读了一下 Fish Li 的CPQuery, 解决拼接SQL的新方法,整体上还是很赞的,提供了一种新的数据库查询方式,这让我想起了很久之前 CoolCode 写的一个字符串拼接类(StringJoiner),个人认为很不错,确实拯救了不少前同事留下来的烂代码。 阅读全文
posted @ 2012-09-11 13:57 Lenic 阅读(2926) 评论(9) 推荐(3) 编辑
摘要: 曾几何时,网络上曾经大传 PredicateBuilder 用于拼接两个 Lambda 表达式树。在对内存数据的筛选上面,其简洁方便的操作大放异彩,但是对数据库操作的不支持,一直是其硬伤。PredicateBuilder 拼接表达式的过程中,产生的 Invoke 表达式无法翻译成 SQL 语句,这是其根本原因。另外,Invoke 表达式编译后,形成的委托调用委托的方式,也是对性能的一种损耗。 阅读全文
posted @ 2012-09-07 10:21 Lenic 阅读(5116) 评论(8) 推荐(8) 编辑
摘要: 今天,一个因为 ORM 的性能问题引发了一场血案,唉。。。 突然想起来几年前我写的一个小东西,放上来大家评论一下,有兴趣的可以测试一下性能,呵呵。 阅读全文
posted @ 2012-08-20 17:31 Lenic 阅读(8261) 评论(22) 推荐(17) 编辑
摘要: 在网上看到不少人民币大写转换的类,或多或少的总有一些问题,不放心用在企业开发上。而且每个人的思路总是天马行空,别说面向对象的方法,就是面向过程也说不通,充斥着各种各样的特殊情况。如果少考虑一种情况,那结果就很难预料,而且代码的可读性,我实在不敢恭维。 阅读全文
posted @ 2012-08-07 16:48 Lenic 阅读(3061) 评论(21) 推荐(16) 编辑
摘要: 前面我也说了不少了,这次把这个东西源代码拿出来,不做解释了。这里放几张图说明一下效果: 首先,这是用到的测试类: 阅读全文
posted @ 2012-07-25 11:06 Lenic 阅读(2559) 评论(15) 推荐(3) 编辑
摘要: 前几篇文章,我把前提都铺垫好了,下面就说说具体的代码。 我为这个转换类取名为 ExpressionParserCore : 需要 SymbolParseResult 类的实例对象和 TypeParser 类的实例对象,分别用于字符串解析和类型解析 需要待分析表达式树的传入参数和传出参数 阅读全文
posted @ 2012-07-06 13:59 Lenic 阅读(3376) 评论(7) 推荐(5) 编辑
摘要: 开始写第四篇,别的不说了。这篇将涉及到如何使用字符串解析结果,生成一个 Lambda 表达式树。东西有点多,我先整理一下思路,在下面说明一下。如果你有问题,在后面的评论上写下来,我看到了会回复你。 阅读全文
posted @ 2012-06-26 13:31 Lenic 阅读(2904) 评论(4) 推荐(2) 编辑
摘要: 承上篇的思路继续写,这次介绍字符串转 Type 的方式——类型分析。我的思路是把 Type 解析由“TestNet.Person, TestNet, Version=1.0.0.0, Culture=... 阅读全文
posted @ 2012-06-05 09:33 Lenic 阅读(3136) 评论(10) 推荐(4) 编辑
摘要: 从这篇开始,我将按照依赖顺序,从核心到外围一步步说明这个东西。时间有点长,东西也不少。耐下心来看,或许能发现一些用得上的东西,当然不仅仅是在这里! 从字符串解析为一个 Lambda 表达式树,... 阅读全文
posted @ 2012-05-29 12:33 Lenic 阅读(5273) 评论(18) 推荐(15) 编辑
摘要: 记得在古老的 2.0 时代,如果想要不重新编译动态更改逻辑,有两种方式:第一种是插件式编程,第二种是使用 System.CodeDom.Compiler 空间下的动态编译功能。两种思路的核心思路差不多... 阅读全文
posted @ 2012-05-25 11:13 Lenic 阅读(4172) 评论(5) 推荐(1) 编辑