zoukankan      html  css  js  c++  java
  • 微软免费图书《Introducing Microsoft LINQ》翻译Chapter3.4,3.5和Visual Basic9.0无关的C#3.0的属性,本章小结

    本书翻译目的为个人学习和知识共享,其版权属原作者所有,如有侵权,请告知本人,本人将立即对发帖采取处理。
    允许转载,但转载时请注明本版权声明信息,禁止用于商业用途!

    博客园:韩现龙


    Introducing to Microsoft LINQ目录
    本节内容比较少。浏览一下即可了。

     

    C#3.0中有一些在VB9中没有的属性,即yield关键字和匿名方法(anonymous methods)。即便在许多情况下,用这些特性在使用LINQ来写代码时都是非常常见的,这两个特性对于支持LINQ都不是必须的。

    yield关键字(The yield Keyword)

    Visual Basic9.0中没有和C#2.0中的yield关键字相匹配的特性。在VB9中你可以通过用使用迭代器模式来实现迭代器。记住,yield关键字不需要CLR的支持。它由生成迭代器的编译器提供支持。

    更多信息   关于closures的更多信息,请参见前几章中的"Closures"章节。

    匿名方法(Anonymous Methods)

    在VB9中,匿名方法并不是独立存在的特性,但是有时lambda表达式可以作为它的一个替代品。lambda表达式的closures是通过这种方式生成,它和C#编辑器的匿名方法相类似。然而,在任何情况下lambda表达式都是不能取代匿名方法的。

    本章小结

    在本章中,我们分四节讲述了VB9.0中的一些重要的特性。第一个是在C#2.0中已经提供的可空类型。第二节讲的是和C#3.0中相匹配的特性:本地类型推断(local type inference),扩展方法(extension methods),对象初始化表达式(object initializeation expressions),匿名方法(anonymous types),查询表达式(query expressions),lambda表达式(lambda expressions)和closures.第三部分讲述了仅在VB9中才有的特性:XML文本,XML延迟绑定和宽松代理。最后,我们在最后一部分中讲述了仅在C#3.0中存在而在VB9中不存在的特性:yield关键字和匿名方法。下一章中我们将学习LINQ语法的基础。

    点个广告:
  • 相关阅读:
    Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
    Centos安装openjdk
    centos7安装nodejs
    Linux服务器集群性能监控之Performance Co-Pilot(PCP)部署
    asp.net(c#)网页跳转七种方法小结
    C# 获取文件名及扩展名
    C#中的 具名参数 和 可选参数
    数据契约(DataContract)
    用LINQ在集合中查询特定对象
    jQuery中append、insertBefore、after与insertAfter方法注意事项
  • 原文地址:https://www.cnblogs.com/hanxianlong/p/1118611.html
Copyright © 2011-2022 走看看