随笔 - 355  文章 - 8 评论 - 512 trackbacks - 19

02 2012 档案
IObservable的两个简单的扩展函数
摘要: IObservable的两个扩展,主要用来和C# 5.0中的异步操作配合使用的。1staticclassObservableExtend2{3publicstaticIDisposableSubscribe<T>(thisIObservable<T>stream,Action<T,CancellationToken>onNext)4{5CancellationTokenSourcects=newCancellationTokenSource();6returnstream.Subscribe(i=>7{8cts.Cancel();9cts=newCan阅读全文
posted @ 2012-02-23 22:18 天方 阅读(82) | 评论 (0) 编辑
通过Roslyn构建自己的C#脚本
摘要: 在下一代的C#中,一个重要的特性就是"Compiler as a Service",简单的讲,就是就是将编译器开放为一种可在代码中调用的服务。最近使用了一下微软放出的Project Roslyn CTP版,感觉还是非常强大的。 要在自己的代码中执行C#脚本,首先进行如下几步准备工作。 在微软的网站下载Roslyn CTP版并安装 在工程中添加Roslyn.Compilers.dll和Roslyn.Compilers.CSharp.dll的引用 在代码中增加如下命名空间的引用。using Roslyn.Scripting;using Roslyn.Scripting.CSha阅读全文
posted @ 2012-02-14 21:15 天方 阅读(175) | 评论 (0) 编辑
利用Bing翻译API简单的实现一个翻译工具
摘要: 常见的翻译服务提供商有Google和微软,它们的在线翻译地址如下:Bing翻译: http://www.microsofttranslator.com/?FORM=R5FDGoogle翻译: http://translate.google.cn/#Bing和Google除了提供在线翻译外,也提供了一系列API,方便开发者制作自己的翻译工具。不过貌似Google翻译收费了,这里就介绍一下如何利用Bing翻译API简单的实现一个翻译工具。要使用Bing翻译的API,首先则必须到http://cn.bing.com/developers/createapp.aspx里注册一个APPID,注册的...阅读全文
posted @ 2012-02-12 11:50 天方 阅读(303) | 评论 (0) 编辑
通过编程计算一个游戏的胜率
摘要: 以前庙会上经常有一个这样的游戏:摆摊人拿出四种不同颜色的球,每种5个,然后放在一个袋子里,让观众摸出十个来,然后按颜色分类,统计每种颜色的个数,根据不同组合可以拿到不同的奖品,但如果是1234或3322这两种组合的时候,则需要给摆摊人几块钱。其实一看到这个游戏就大致猜到这是个概率游戏了,1234和3322绝对是该规则下出现的较大的两个概率,摆摊人则无需使用任何作弊手段。但这两种组合的概率是多大,到一直没有细考虑过。其实上学的时候尝试算过,但当时数学没学好,愣是没算出来,便很快放弃了,现在上几年班后就自然更算不出来了。今天编了个小程序简单的算了个粗略的结果:程序如下:1classProgram2阅读全文
posted @ 2012-02-06 23:13 天方 阅读(91) | 评论 (0) 编辑