2012年11月26日

委托与匿名方法

摘要: 反汇编了一段程序,重新编译时,下面的代码不能通过:private void OnFrameChanged(object o) { base.Dispatcher.BeginInvoke(DispatcherPriority.Render, delegate { this.ChangeSource(); }); } private void ChangeSource() { ... 阅读全文

posted @ 2012-11-26 10:13 freecoder 阅读(522) 评论(0) 推荐(0) 编辑

2012年11月19日

expression的用途之任意实体类共享逻辑(c#)

摘要: .net下的expression tree研究几天了, 在网上看一些教程,上来就开始介绍什么是表达式树和lambda是什么,我觉得这完全没必要,只要学过编译原理的,哪个不知道表达式树是什么?我想下面的图谁都能看到懂。lambda也完全没必要介绍,不就是匿名函数吗?你教别人高等数学时候,难道从1+1开始?所以表达式树和lambda的概念稍微提下就可以了,没必要说太多的话。再多说一点,网上很教程,特别是讲设计模式的,很喜欢用toy code做示例,这点我也非常不喜欢,没有任何实用价值!我认为,只要是识字的人,看过GOF有《设计模式》的人,没人不明白设计模式是是什么!问题是,在实际应用场景下用设计模 阅读全文

posted @ 2012-11-19 12:40 freecoder 阅读(1066) 评论(1) 推荐(0) 编辑

2012年11月4日

.Net下的嵌入式脚本语言

摘要: 我的Winform程序要支持用脚本扩展功能,在考察了Lua、Javascript、Python等脚本语言在.Net平台上封装后,决定用IronPython.现在总结一下几种脚本在.Net下的支持情况。1、Lua在.Net上的有开源项目Luainterface,Luainterface的实现不错,可惜不支持中文标识符。这点无法接受。2、Javascript在.net上的实现非常多,有的自己实现的,有的是封装的其它的引擎,比如V8。 1)Noesis.Javascript是V8的一个Wapper,使用很简单,但功能也打折扣,和宿主互调用比较麻烦。没有简单的方法在c#中调用js中的函数。 2)J.. 阅读全文

posted @ 2012-11-04 16:50 freecoder 阅读(407) 评论(0) 推荐(0) 编辑

导航