2010年1月3日
摘要: 一个类无法包含两个相同签名的方法,即使一个是状态,另一个非静态。 而扩展方法无法与静态方法拥有相同签名?是限制还是编译器的bug? 阅读全文
posted @ 2010-01-03 02:18 CoolCode 阅读(2959) 评论(8) 推荐(1) 编辑
  2009年12月10日
摘要: 上一篇文章我介绍了使用Expression Tree 来创建带参数的构造函数Lambda表达式,但不是任意多个参数。当天晚上看到Ivony的留言,顿时有了一点灵感,决定再深入一下。 阅读全文
posted @ 2009-12-10 19:37 CoolCode 阅读(4283) 评论(17) 推荐(4) 编辑
  2009年12月9日
摘要: 标题实在是太长了,是吗?其实并无什么高深的内容。今天看了 Will Meng 的 《Activator.CreateInstance(Type type)方法创建对象和Expression Tree创建对象性能的比较(终结版)》一文,请没有看过该博文的朋友先前往围观,或许会得到一些启发。而我想知道如果创建对象带参数会是什么样的情况呢,可惜没有看到,于是自己动手试试,作为前文的一点补充。而本文另一个目的是,对于多参数的情况,本人提供的实现方法实在是不雅,请高手指点如何重构它们成为一个通用的版本。 阅读全文
posted @ 2009-12-09 20:07 CoolCode 阅读(5147) 评论(13) 推荐(1) 编辑
  2009年11月10日
摘要: Ninject是一个快如闪电、超轻量级的基于.Net平台的依赖注入框架。它能够帮助你把应用程序分离成一个个松耦合、高内聚的模块,然后用一种灵活的方式组装起来。通过使用Ninject配套你的软件架构,那么代码将会变得更加容易编写、重用性强、易于测试和修改。 搜索博客园尚未找到关于Ninject的使用,因此本文发布一个示例作入门级教程。 阅读全文
posted @ 2009-11-10 17:18 CoolCode 阅读(16270) 评论(38) 推荐(7) 编辑
  2009年10月19日
摘要: 以下语录是笔者平时工作的小小感悟,发到博客里纯粹是自娱自乐,供大家茶余饭后轻松一下。在此声明,以下内容皆是原创,如有雷同,纯属瞎扯淡 ( - 。-!) 1. 一般程序员所拥有最“强”的两件武器就是:复制和粘贴。 2. 程序员之间是有“代沟”的。 阅读全文
posted @ 2009-10-19 21:29 CoolCode 阅读(628) 评论(2) 推荐(1) 编辑
  2009年10月13日
摘要: 很简单,把 string s 改成 StringJoiner s 就足以令拼装字符串的代码性能提高30多倍。 阅读全文
posted @ 2009-10-13 00:01 CoolCode 阅读(8226) 评论(50) 推荐(12) 编辑
  2009年10月12日
摘要: 如果说老赵的《使用Lambda表达式编写递归函数》是屠龙刀的话,那么此文称作倚天剑应是理所当然的。 x = f(Fix(f))(x) | x = f(Fix(f), x) var inorder = Fix(f= n = { if (n != null) { f(n.Left); Console.Write(n.Value); f(n.Right); } }); var preorder = Fix(f= n = { if (n != null) { Console.Write(n.Value); f(n.Left); f(n.Right); } }); var postorder = Fix(f= n = { if (n != null) { f(n.Left); f(n.Right); Console.Write(n.Value); } }); 阅读全文
posted @ 2009-10-12 09:13 CoolCode 阅读(3516) 评论(23) 推荐(2) 编辑
  2009年9月30日
摘要: Enum.Foreach(e = Console.WriteLine(e));这个Enum.Foreach 方法已经帮了我很大忙了,让我可以一句代码就实现对Enum进行遍历。后来,我又发现仅是Foreach还不够用,有时候我还要对Enum进行查询操作,自然而然想为它添加类似 Linq 的Where 方法 阅读全文
posted @ 2009-09-30 11:29 CoolCode 阅读(1000) 评论(5) 推荐(0) 编辑
  2009年9月28日
摘要: 为什么用上“先进”的工具还是会倒在惨不忍睹的代码海洋里呢?因为Microsoft提供给我们的只是“鱼竿”。这种鱼竿不管在小河还是大海都能钓到东西,而且不管你钓的是鲨鱼还是鲸鱼,也保证鱼竿不会断。但是有些人能钓到大鱼,有些则钓到一双拖鞋。 阅读全文
posted @ 2009-09-28 09:09 CoolCode 阅读(19752) 评论(82) 推荐(24) 编辑
  2009年9月27日
摘要: 葫芦里卖的是什么药? 这个“漫无边际”的想法实现的效果是: 如果页面是Foo.aspx, 通过 this.View() 来Redirect; 通过 this.Url() 来获取Url; 通过 this.Url( new {param1= "value1", param2= "value2"}); 来返回带参数的Url。 阅读全文
posted @ 2009-09-27 18:00 CoolCode 阅读(2069) 评论(6) 推荐(0) 编辑