随笔分类 -  .NET

摘要:.NET中把“事件”看作一个基本的编程概念,并提供了非常优美的语法支持,对比如下C#和Java代码可以看出两种语言设计思想之间的差异。// C#someButton.Click += OnSomeButtonClick;// JavasomeButton.addActionListener( ... 阅读全文
posted @ 2014-09-11 22:47 Bruce Bi 阅读(2065) 评论(5) 推荐(1) 编辑
摘要:好长时间没有写博文了,今天继续。这次跟大家分享的内容起因于对一个枚举值列表的序列化,下面简化后的代码即能重现。为了明确起见,我显式指定了枚举的基础类型。// 定义一个枚举类型。public enum SomeEnum :int{ First, Second, Third, .... 阅读全文
posted @ 2014-08-06 18:46 Bruce Bi 阅读(1556) 评论(9) 推荐(1) 编辑
摘要:.NET框架为程序员提供了“序列化和反序列化”这一有力的工具,使用它,我们能很容易的将内存中的对象图转化为字节流,并在需要的时候再将其恢复。这一技术的典型应用场景包括[1] :应用程序运行状态的持久化;在应用程序之间通过剪切板传送对象;创建对象复本,以隔离用户操作造成的影响;在网络间传送对象。然而,.NET框架提供的默认序列化行为也存在着有诸多限制,尤其是在版本控制方面——比如一个使用SerializableAttribute标记,而未实现ISerializable的类型,在通过重构修改了某个字段的名称后,再反序列化之前的序列化结果时就会失败。本文首先举例说明了.NET默认序列化方案的限制;然 阅读全文
posted @ 2013-07-06 21:06 Bruce Bi 阅读(3228) 评论(6) 推荐(6) 编辑
摘要:我想有不少人像我一样,刚开始使用.NET中动态加载程序集的功能时,会被Assebmly中那么多加载程序集的方法搞得无所适从。当求助于MSDN和Baidu、Google后,可能会更加迷茫——说实话MSDN中相关的说明确实很难理解甚至有自相矛盾的地方,网上的大多数资料也讲得不甚明了。所以,我在这里分享一下自己对这些函数及其背后相关概念的理解,希望能帮到大家。文中如有错误,还请大家指正。本文的内容主要基于MSDN和Steven Pratschner的《Customizing the Microsoft® .NET Framework Common Language Runtime》一书,这 阅读全文
posted @ 2013-05-22 12:22 Bruce Bi 阅读(5554) 评论(6) 推荐(3) 编辑