Yok

苦海无涯,回头是岸啊

2005年11月3日

利用Emit减少反射的性能损失

摘要: 我很喜欢在程序里使用反射,让事情变得更简单、灵活。但是在获得便利的同时带来的是性能上的损失。粗略的测试一下,通过反射根据成员名字去访问成员比直接访问慢250倍左右。听起来挺吓人,但是以时间来算,用我的p4 2.66G的机用反射访问成员一次耗时仅3微秒,对与整个程序的运行周期看来,这占的时间微不足道。 不过我用反射的程度确实过分了点。我很久以前就做过这么一样东西,利用反射实现asp.net控件和数据... 阅读全文

posted @ 2005-11-03 14:11 Yok 阅读(8035) 评论(12) 推荐(0) 编辑

2005年6月23日

CodeSmith终极玩法

摘要: CodeSmith是一个模仿asp.net运行机制的代码生成器, 运行时分析模板(相当aspx文件)的预编译指令和主体内容, 生成一个继承自CodeSmith.Engine.CodeTemplate(相当于System.Web.UI.Page)或者一个在Inherites预编译指令指定的类(相当于CodeBehind类)的源码, 且把它编译. 然后把这个类绑定到一个PropertyGrid, 让... 阅读全文

posted @ 2005-06-23 21:34 Yok 阅读(6982) 评论(8) 推荐(0) 编辑

2005年4月28日

用jscript处理repeater生成的表格, 实现分页打印

摘要: 我现在做的项目的录入数据的界面基本上和原来纸面上表单的外观相同. 而这些表单也同时需要被打印出来, 为了省事, 想出了用js遍历DOM进行转换的方法, 如此一来就不需要另外做一个用于打印的页面了. 非列表式的表单比较好办, 只要把一些不适合打印出来的html控件(例如,)替换掉就可以了. 列表式的表单还要解决分页的问题, 会复杂一点. 但说到底还是替换一些html元素而已. 实现分页需要在htm... 阅读全文

posted @ 2005-04-28 00:29 Yok 阅读(2734) 评论(9) 推荐(0) 编辑

2005年4月5日

讨厌的解决方案资源管理器

摘要: 大家有没有这样的经历: 想拖解决方案资源管理器的滚动条, 然后没有点中, 结果把某个文件拖到某个地方了, 然后要费不少时间把它找回来 阅读全文

posted @ 2005-04-05 18:00 Yok 阅读(1404) 评论(8) 推荐(0) 编辑

2005年3月5日

我的玩具: 利用xmlhttp无刷新动态加载内容的DropDownList控件

摘要: 上图除了"市"外其他select都是DynamicDropDown控件, DynamicDropDown指定监视某一个控件, 当被监视控件的某个客户端事件发生时会用xmlhttp往服务端回发数据, DynamicDropDown在服务端的Request事件会被触发, 在Request的事件处理程序里即可控制列表的选项. 一个DynamicDropDown的onchange同样也可以引发另一个D... 阅读全文

posted @ 2005-03-05 00:15 Yok 阅读(5647) 评论(3) 推荐(0) 编辑

2005年1月30日

Yok很生气, 后果很严重

摘要: 借首页发发牢骚 事情是由一个同事的辞职引起的. 他辞职理由之一使用是公司的一个二次开发平台会影响个人发展. 部门经理听了很不解, 接着他一个个把使用过这平台的人找去谈话, 询问对使用此平台的感受. 结果我说, 它确实对个人发展不利, 并且顺便提出, 我要辞职. 几位新来的同事倒没有说什么, 我估计是因为面对着经理不敢说实话, 因为平时的谈话中感觉到他们也有点牢骚的. 有必要先介绍一下这个... 阅读全文

posted @ 2005-01-30 16:49 Yok 阅读(4172) 评论(48) 推荐(0) 编辑

语言真的不重要?

摘要: 虽然各种语言有很多地方是相通的, 但确实觉得用不同语言的人的思维方式会有明显的差别. 这更多是文化上而不是技术上的差异造成的. 就算同是.net, 博客园和csdn net板块的风格差异就十分大, jdon还跟javaeye吵架. 和什么样的人一起混多了, 思想就会被同化 这是个很有趣的比较, 请看国内.net, java, delphi领域中最有代表性的社区里的.net话题, 看看区别有多大:... 阅读全文

posted @ 2005-01-30 16:44 Yok 阅读(697) 评论(0) 推荐(0) 编辑

2005年1月26日

用DataBinder绑定索引器

摘要: nhibernate的Session.Find方法返回的可能是一个对象数组的集合, 例如Find("Select customer.Id, customer.Name From Customer customer"),它返回的是由object[2]组成的ArrayList. 不知怎么绑定到DataGrid好, 后来发现DataBinder.Eval可以用"[xxx]"的表达式去访问索引器. 所... 阅读全文

posted @ 2005-01-26 18:53 Yok 阅读(2601) 评论(3) 推荐(0) 编辑

2005年1月21日

用于弹出ModalDialog进行数据选择的控件

摘要: 修改了一下. 要另外写js函数去打开窗口还是麻烦了点, 现在打开窗口的js函数由控件生成了. 过去写的webform程序, 很多地方需要弹出一个窗口进行数据选择. 最简单的情况是选择了弹出窗口某条数据后直接修改某个html元素的值, 麻烦一点的就是数据库可能保存的是被选择记录的id, 所以除了有用于显示文字的textbox, 还要有一个用来存放id的hidden. 更恐怖的就是选了一条记录... 阅读全文

posted @ 2005-01-21 22:48 Yok 阅读(1219) 评论(0) 推荐(0) 编辑

2005年1月19日

获取引发PostBack的对象

摘要: 既然asp.net能把客户端的操作包装事件, PostBack之后从Page.Request.Forms里肯定能找到到底是哪个控件的提交. 看了一下asp.net生成的html, 我发现对客户端来说, 引发postback的方法有两种, 一种是submit按钮, 一种是调用__doPostBack() 例如Button的html代码是 而LinkButton是 LinkButton ... 阅读全文

posted @ 2005-01-19 20:44 Yok 阅读(2512) 评论(7) 推荐(0) 编辑

导航