51

一站式WPF--依赖属性(DependencyProperty)一

Windows Presentation Foundation (WPF) 提供了一组服务,这些服务可用于扩展公共语言运行时 (CLR)属性的功能,这些服务通常统称为 WPF 属性系统。由 WPF 属性系统支持的属性称为依赖项属性。  这段是MSDN上对依赖属性(DependencyProperty...

周永恒 发布于 2009-09-10 17:16 评论(48) 阅读(30865)
1

趣味编程:Functional Reactive Programming

最近我们搞了一些把事件当作对象方面的工作。基于事件的编程再常见不过了,尤其是在和UI相关的WinForm,WPF,Silverlight开发方面。把事件作为一等公民看待之后,我们可以实现一些较为“特别”的编程模型,例如Functional Reactive Programming。这是一种较为优雅的...

Jeffrey Zhao 发布于 2009-09-10 12:26 评论(75) 阅读(14948)
5

稳扎稳打 Silverlight 3.0 系列文章索引

webabcd 发布于 2009-09-10 08:18 评论(38) 阅读(15570)
0

监视程序中的死锁及其他

每天回家路上总有一段比较长的路一片漆黑无法看书。这种时候,如果我有兴致则会用手机上上网,但是大部分情况下还是用来想问题的。刚才在路上想起今天的工作之一是让一个类型中的所有方法对多线程“完全互斥”——我不知道如何为它命名,我的意思是一个类中任意两个方法A或B,在A没有退出前,另一个线程是无法访问B的(...

Jeffrey Zhao 发布于 2009-09-10 00:08 评论(30) 阅读(14574)
4

趣味编程:将事件视为对象

如果一个语言(平台)把事件视为对象,则表明它把“事件”作为了语言的一等公民来对待。这意味着,我们可以把一个单独的事件作为参数传递给方法,也可以将其作为一个对象的一部分,这有效地提高语言的抽象能力。试想,如果没有“委托”,在.NET中就无法把“方法”看作是对象,也就很难使用如今各种灵活的抽象方式。同样...

Jeffrey Zhao 发布于 2009-09-09 13:11 评论(70) 阅读(13158)
6

我犯了一个错误,您能指出吗?(结论)

其实许多朋友已经在回复中发现问题所在了,其中最早指出错误的是狼Robot同学,他说: 每个T都会使用一个新的连接。 泛型类中的静态变量会因为T的不同而产生不同的值,也就是说每个T所访问的静态变量都是独立的。 正是这个原因,导致UserRepository和ArticleRepository,虽然似...

Jeffrey Zhao 发布于 2009-09-08 15:55 评论(55) 阅读(13850)
6

我犯了一个错误,您能指出吗?

这是我最近在项目中犯的一个错误,您能指出吗? 这个项目在数据访问方面使用了传统的Repository模式。为此,我定义了一个Repository基类,可以让每个不同的Repository继承它:public abstract class Repository<T> { ... }publ...

Jeffrey Zhao 发布于 2009-09-08 10:01 评论(113) 阅读(15519)
0

稳扎稳打Silverlight(41) - 3.0Tip/Trick之GPU 加速, Out-Of-Browser, 应用程序库缓存, 合并 ResourceDictionary, 应用程序扩展服务, Silverlight 插件对象

webabcd 发布于 2009-09-08 08:00 评论(26) 阅读(5240)
4

把事件当作对象进行传递

最近在琢磨一些事情,和API设计有关。API设计在很多时候是和语言特性有关的,因此如Java这样的语言,在API设计时会处处受到压抑。而C#就能够出现如Moq或Fluent NHIbernate这样的项目。同样,F#能够开发出FsTest,Scala号称Scalable Language,都是依靠着...

Jeffrey Zhao 发布于 2009-09-07 17:20 评论(89) 阅读(7490)
2

较为理想的延迟代理的编写方式

之前我谈到,在普通情况下我们可以很轻松地写出过一个代理类,用来处理延迟加载的情况。当时给出了一个很简单的做法,也就是指创建基类,覆盖它的一些属性实现,类似这种:public class LazySomeClass : SomeClass{ public override int SomeID { g...

Jeffrey Zhao 发布于 2009-09-07 11:15 评论(70) 阅读(7850)
1

WCF服务中操作FormsAuthentication的Cookie

张善友 发布于 2009-09-06 20:51 评论(3) 阅读(2760)
4

如果是能简单解决的问题,就不用想得太复杂了

有个朋友在MSN问我说,有没有关于Emit的资料,它想生成一个类的动态代理。他抱怨Emit还是很麻烦,不过交谈过后知道他是想要做什么。他希望为一个对象的某个属性作延迟加载,这样可以避免一些无谓的消耗。例如:public class SomeClass{ public int SomeID { get...

Jeffrey Zhao 发布于 2009-09-05 17:41 评论(34) 阅读(7550)
15

一份值得阅读的幻灯片:微软对PHP支持的改进,及其它一些胡言乱语

这里有一份我觉得值得推荐给大家的幻灯片(下载链接)。这个幻灯片是不久前举办的WordCamp China 2009上微软王超群的演讲,演讲主题是《熟悉的陌生人:微软对PHP的新支持使WordPress在IIS7上雄起》。WordCamp是业界著名的PHP大会,不过我这里推荐这个幻灯片不是为了为了推广...

Jeffrey Zhao 发布于 2009-09-04 02:17 评论(110) 阅读(11412)
2

通过表达式树构造URL时忽略部分参数

您的使用ASP.NET MVC的时候,一定遇到过使用Post接受数据的Action方法。例如:public class HomeController : Controller{ [AcceptVerbs(HttpVerbs.Post)] public ViewResult List(string k...

Jeffrey Zhao 发布于 2009-09-03 11:37 评论(2) 阅读(5124)
1

稳扎稳打Silverlight(40) - 3.0绑定之Element to Element Binding, RelativeSource; 样式之动态修改样式, 样式继承, 自定义光标

webabcd 发布于 2009-09-03 08:35 评论(35) 阅读(7288)
5

您能看出这个Double Check里的问题吗?(解答)

问题请参考:您能看出这个Double Check里的问题吗? 已经很有很多朋友得到了结果,是由于m_categories过早初始化,而导致double check的验证条件被破坏(或者说,满足)。private object m_mutex = new object();private Dictio...

Jeffrey Zhao 发布于 2009-09-02 17:16 评论(56) 阅读(9072)
5

您能看出这个Double Check里的问题吗?

昨天在做code review时看到一位同事写了这样的代码。这段代码的目的使用Double Check的做法来保证线程安全的延迟加载。但是我看到这代码之后发现了一个问题,这个问题不是第一次出现。因此,我打算在博客上记录一笔,希望可以给更多人提个醒吧。 假设,我们有这样一个Category类型,记录的...

Jeffrey Zhao 发布于 2009-09-02 15:11 评论(96) 阅读(8792)
2

趣味编程:函数式链表的快速排序(参考答案)

之前我提出了一个“趣味编程”,模仿Haskell的方式对一个链表进行快速排序。在那篇文章中我解释了Haskell列表的结构,并给出了ImmutableList的基础实现。快速排序的例子很多,多做也没有意思。这题虽然打着“快速排序”的旗帜,但事实上这里的关键在于实现ImmutableList数据结构的...

Jeffrey Zhao 发布于 2009-09-02 10:58 评论(20) 阅读(5122)
5

优化通过表达式树构造URL的性能

我们继续改进通过表达式树构造URL的方式。在上一篇文章中,辅助方法可以正确地识别了ActionNameAttribute,而这次改进的则是性能方面的问题。首先还是来看一下用于从表达式树获取RouteValueDictionary的方法:public static RouteValueDictiona...

Jeffrey Zhao 发布于 2009-09-01 19:29 评论(54) 阅读(5424)
1

通过表达式树构建URL时正确识别ActionNameAttribute

在MvcFutures项目中提供了一个辅助方法,可以将一个表达式树对象转化成一个RouteValueDictionary集合。只可惜,这个辅助方法的毛病比较多。例如,它直接把方法名作为action的值,而忽略了其上标记的ActionNameAttribute。这导致了某个被“改名”的Action方法...

Jeffrey Zhao 发布于 2009-09-01 14:25 评论(5) 阅读(5765)

团队名称

  • .NetFramework3.0 & 3.5(WCF,WPF,WF)团队

团队简介

  • 致力于微软新技术(WCF,WPF,WF)的研究

团队负责人

团队成员

1. 笑清风 2. 张善友 3. Artech 4. 周永恒 5. 宏宇 6. webabcd 7. lodestar 8. LDAR泄漏检测与修复 9. 徐少侠 10. Muse 11. 甲_乙_丙_丁 12. zhengguoqing 13. seabluescn 14. Samgle 15. Steven Xiao 16. KidYang 17. surfsky 18. 李学斌 19. 子福当自强 20. 漂泊雪狼 21. 拓子 22. Tony.Gong 23. 温伟鹏 24. 山姆蜀黍 25. Cat Chen 26. 坚强2002 27. 努力学习的小熊 28. ξ箫音ξ 29. wenanry 30. 软件~民工 31. NGNGrid 32. 高高 33. Frank Huang 34. 笨笨丁 35. cipchk 36. 落拓孤鸿 37. 斯伯内德 38. VincentYinBo 39. 周克 40. 么么茶.NET 41. zhouwillpower 42. sunfishlu 43. 刚说 44. 烟仔 45. John Yang 46. 一言@barrytam 47. Anytao 48. 暗香浮动 49. zhujinhu 50. Group01 51. 何东建 52. 舞蹈飞机 53. cy 54. 伯约 55. 鸡哥哥 56. 沸石 57. Stanley.Luo 58. 尕豆 59. lixiang 60. HollisYao 61. upzone 62. SPARON 63. K.NET 64. WXWinter(冬) 65. 北极熊,我来了! 66. cncsharp 67. coffeeliu 68. 邵利超 69. wangxc 70. MFKSoft 71. hi-justin 72. 杨丹 73. 飘飞的雪 74. jhkmnm 75. Haozes 76. ◎寶☆呗 77. Adrian H. 78. 風語者·疾風 79. Kiven 80. microsoft001 81. 非非.Net 82. ColinYang 83. 雅翔的天空 84. AppleSeeker(冯峰) 85. My97 86. 极地银狐.NET 87. sunnyrain-y 88. flyingfish 89. XDS 90. 魔幻天空 91. Jeffrey Zhao 92. A A 93. 沉睡海洋 94. 笨仔快跑 95. Mark Hu 96. The Game 97. Windie Chai 98. kim 99. 灯火阑珊²ºº7 100. 蛤蟆 101. Jeffrey Lee 102. Robert Lee 103. Clark Zheng 104. 菌哥 105. Rhino518 106. 渔民 107. 五月三 108. 糊涂小猪 109. 軒轅 110. 司徒拔's Paradise 111. 旻 112. neuhawk 113. lizhiwen 114. 嘻哈 115. 萧远山 116. zxWraith 117. 一汐 118. 大森林 119. sinory 120. 雨帘 121. DQ 122. 随风流月 123. 昊子 124. 赖仪灵 125. 大约在冬季 126. 寒萧 127. 一万光年外 128. 东成西就 129. H2O、winnerzone 130. codename.net 131. altaser 132. 自知 133. 海滨 134. 随风飘散 135. snowy 136. Chatterley 137. BertonZhong 138. 陌生海岸 139. 星宿.NET 140. neal1985 141. preternatural 142. 徐鸿翼 143. 初哥 144. earlier 145. 艺手遮天 146. 苍冥 147. WWFCN.NET 148. 灯火阑珊 149. 小白鲨2001 150. equinox-dAVId 151. charlescheng 152. TSENG 153. Jarod 154. 暮松 155. 小门派 156. lvcha 157. 诗剑 158. づ韓じ懷飛→ 159. 低调做人,高调做事! 160. karlsoft 161. Jameslee 162. 瘦老虎 163. 东山歌酒 164. pol 165. linkfuture