03 2009 档案
摘要:畅游地球是个美好的愿望,随着地图服务的日益完善,我们足不出户畅游全球已变得简单异常。事实上,Google Earth和Virutal Earth已经成为Web服务中的必选目标,为自己的网站加入Earth或者Map地图服务是件非常酷的事情,那么在我们的Silverlight应用中使用地图服务是否能够得心应手呢?
答案是肯定的,我们操作Earth服务只需执行简单的服务调用,就可完成坐地日行八万里的壮举了,而这一切是由VIEWs组件封装了Javascript脚本来完成的,通过对Virtual Earth Service的调用,在Silverlight中使用托管代码完成简单消费。
下面我们来看看这一过程是如何实现的?
阅读全文
摘要:问题的解答,常常是留给自己思考的,有时候一个猛然浮现的问题将我拉入混沌,但是思考和探索之后也会豁然开朗;有时候,给他人方便就是给自己方便,但是没有记录的方便不足以给更多人方便;过去的很多时间,我回答了很多问题,但是发现重复回答的比例在直线上升,所以在一个统一的地方,提供统一的管理是最好的方式。那么,从今开始这个方寸土地,就是我记录问答时刻的一亩三分地,任何我熟悉和了解的问题,都将尽己所能为你解忧,同时任何我不知道或闻所未闻的内容,也请您见谅我的无知,但是至少你会得到一个“对不起,我不知道”的答案。
阅读全文
摘要:老赵在谈表达式树的缓存(2):由表达式树生成字符串中提到,在描述Type信息时讨论FullName或者AssemblyQualifiedName提供完整的Type信息,虽是小话题,但却是值得有聊的话题。在.NET中反应一个Type名称信息的有以下三个属性,分别是:
Name,获取当前成员的名称。
FullName,获取Type 的完全限定名,包括Type的命名空间,但不包括程序集。
AssemblyQualifiedName,获取Type的程序集限定名,其中包括从中加载Type 的程序集的名称。事实上,AssemblyQualifiedName被定义为只读abstract属性,具体的实现由其派生类来实现,例如TypeBuilder,我们可以根据其具体实现类型对此有个大致的了解。
此处的定义毋庸置疑是官方的(MSDN),俗话说,事实是检验真理的唯一标准,那么这三个相近的概念,究竟代表了怎样的不同,我们回到事实近看分晓。
阅读全文
摘要:在.NET世界里,我们常常听到的一句话莫过于“System.Object是一切类型的根,是所有类型的父类”,以至于我在《你必须知道的.NET》8.1节 以“万物归宗:System.Object”这样的title为System.Object授予至高荣誉。所以,基于这样的观点就有了下面这句“接口是否也继承于System.Object?”,事实上这正是今天在技术群里小小讨论的一个插曲。
interface,想说爱你不容易呀。
阅读全文
摘要:Metadata描述了静态的结构,而IL阐释了动态的执行,这一静一动承载了太多的技术奥秘。
终于到了,说说元数据和IL在JIT编译时的角色了,虽然两个回合的铺垫未免铺张,但是却丝毫不为过,因为只有充分的认知才有足够的体会,技术也是如此。那么,我们就开始沿着方法调用的轨迹,追随元数据和IL在那个神秘瞬间所贡献的力量吧。
阅读全文