摘要:
Razor 是 ASP.NET MVC 3.0 支持的一个新的视图引擎,但只要你愿意,也可以摆脱 MVC 框架,而把它用作普通的文本模板引擎。这样也许我们不用学习流行的 T4 了?参见思归的博客: 怎么在ASP.NET WebForm中使用Razor视图引擎 阅读全文
2011年1月27日
2010年11月7日
摘要:
档位示意 ======= 1 3 5 空 2 4 倒 脚下: =============== 离合器 刹车 油门 方向盘左侧 有转向灯拨杆。向下是左转向灯;向下是右转向灯。 右手边是手刹。 仪表盘: ===============... 阅读全文
2010年10月31日
摘要:
昨晚抽空看了 PDC 2010 Anders Hejlsberg 的演讲,还是一如既往的激情四溢,每次 Demo 完了之后观众都会发出会心的掌声。 Anders 在演讲中介绍了 C# 和 VB 接下来的发展方向(讲解是以 C# 进行的,但他说 VB 将会和 C# 同步发展,具备 C# 包含的新特性)。 演讲的内容包括 Async 和 Compiler as a Service 两部分。 首先 An... 阅读全文
2010年9月5日
摘要:
(CLR via C# 3rd Edition) 在 GUI 程序中 (winform / wpf / silverlight),如果启动新的线程池线程,则在此线程中将不能直接更新 UI. 在 asp.net 中,在处理 client request 的线程中,同时会根据客户端的情况关联相应的 System.Globalization.CultureInfo, 以便服务器端能够使用客户相关的 c... 阅读全文
摘要:
Jeffrey Richter 的 blog 讲述了一种改写遗留代码的办法,可以让原先不是线程安全的代码运行在不同的 AppDomain 中,从而支持在多个线程中使用。 http://www.wintellect.com/CS/blogs/jeffreyr/archive/2010/09/01/using-appdomains-to-make-non-threadsafe-code-thread... 阅读全文
2010年8月26日
摘要:
昨天架构师建议我将一个对远程 db server 的查询修改为先配置一个 Linked Server,然后查询。这样做的目的是可以在本地把 SQL 写到一个存储过程里面,程序调用方便一点(因为不具有远程数据库的管理权限)。但是我实践了一下后,发现这样修改后性能超慢!甚至根本查不出来。后来网上搜了一下,对 Linked Server 的查询,很多情况下是需要把大量数据发送到本地来处理的,这样不慢才怪... 阅读全文
2010年8月25日
摘要:
前段时间尝试了一点 Google 的 Go 语言,感觉其很多特性还是不错的。Go 语言旨在结合传统编译型的静态语言和解释型的动态语言的优点,在其中找到一个平衡。从而打造一个既快速(编译执行),又方便编程的语言(动态语言往往语法简单快捷)。同时,Go 语言还具备丰富的特性以支持并发编程,这在现在多核非常普及的情况下,是很重要和强大的一个功能。 Go 语言的并发特性主要有 goroutine, ch... 阅读全文
2010年8月23日
摘要:
用 Visual Studio 开发 Reporting Service 报表,今天忽然一个 rdl 文件打开时莫名其妙的报错: Deserialization failed: The ‘DataType’ attribute is not declared 经过搜索知道原来这是报表设计器的一个 bug. rdl 序列化所用的 xsd 文件中没有 DataType 属性的定义,而实际生成的文件... 阅读全文
2010年8月11日
摘要:
首先打开:应用程序>附件>终端, 创建一个 bin 目录用于存放编译后的程序目标文件(可选) 命令中的 ~ 代表用户根目录。 $ mkdir ~/bin 然后用超级用户身份编辑用户配置文件,加入4个环境变量: $ sudo gedit ~/.bashrc 输入密码,开始编辑配置文件。在尾部加入下列代码后,保存。 export GOROOT=$HOME/go export GOARCH=... 阅读全文
2010年8月6日
摘要:
对一些琐碎的想法做一个总结,先写在这里。 1. 用例分析 2. 业务知识学习 3. 设计 DomainModel 4. 设计 UI prototype. 5. 设计/编写 Service Layer (interface). 实现时要注意支持 Unit Test. 6. 根据5的需求设计 database model, 实现 Repository (为减轻工作量,可以随便挑一个好用的 ORM 框架... 阅读全文
2010年7月29日
摘要:
http://workawesome.com/career/why-complaining-doesnt-work/ Some things to keep in mind that make for a good barometer when comparing making yourself heard and complaining to consider include: How lon... 阅读全文
摘要:
参考老赵文章里的代码: http://blog.zhaojie.me/2010/04/fsharp-for-asp-net-2-implement-event-based-asynchronous-pattern-with-fsharp.html 写了一个简单的代码,异步的在两个流之间搬运数据。这里一个是打开的文件流,另一个是 Console 输出流: over. 阅读全文
2010年7月28日
摘要:
拿简单的阶乘函数来举例,非递归版本可以简单的写成这样: 这个会被编译为:而将一个普通递归算法改成成尾递归的关键往往是,在参数列表中多加一个状态参数,这样在调用下一次递归的时候,本次调用时的信息就不需要保存了,避免了 StackOverflowException. F# 可以对尾递归自动做编译优化,变成循环来处理(不确定是否对所有尾递归都能做到?):这个版本的代码会被编译为:很明显可以看到代码的结... 阅读全文
摘要:
可区分的联合也可以含有成员 (member). 如下列代码示例给二叉树添加了一个 Size 属性:以上用了模式匹配的语法来计算节点数(忽略了 Tip)。即:二叉树树的节点数 = 1(当前节点)+ l.Size (左子树节点数) + r.Size (右子树节点数)这里显然用了一个递归,我们用 Reflector 看看编译生成的代码:可以发现该代码仍然使用的递归,而没有做任何优化(大概是因... 阅读全文
2010年7月27日
摘要:
代码: 输出:Hi there, I'm Jack and I'm 30 years old. Hi there, I'm Tom and I'm 20 years old. Jack 20 type Person = {Name: string; Age: int;} with member SayHi... 阅读全文