科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件Visual Basic 9不完全入门之DLinq进阶

Visual Basic 9不完全入门之DLinq进阶

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

随着 Beta 2 的发布,无数的新特性涌到程序员的面前

作者:随风流月 来源:论坛整理 2007年11月9日

关键字: Visual Basic DLINQ 进阶

  • 评论
  • 分享微博
  • 分享邮件
随着 Beta 2 的发布,无数的新特性涌到程序员的面前。历经千辛万苦,我也安装上了 Visual Studio 2008 Standard Edition Beta 1。这一篇文章随之改变内容,转而描述 Beta 2 中 DLinq 振奋人心的增强。此处仅列出一部分,性能的评估则移交 LINQ 性能分析系列,日后再谈。

  命名空间的更改

  虽然命名空间的更改不在增强之列,但是由于其重要性(为此我耗费了将近20分钟),还是有必要在此叙述。我建议各位重新创建 dbml 文件,因为文件格式似乎已经不兼容。所有的关于数据映射的属性都被移到 System.Data.Linq.Mapping;一部分接口则转移至 System.ComponentModel 中。如果您是从 Beta 1 迁移,这项问题极其重要。

  更多的谓词支持

  Beta 1 中的 LINQ 仅仅支持少数常用的谓词,这使得其余复杂的操作难以完成。晦涩难懂的 Union,Join 用法,使人难以忍受。所幸,Beta 2 中的 LINQ 终于对它们提供了完整支持。类似于 Group By,Join 等的谓词可以像 T-SQL 那样工作。从此,DLinq 的 SQL 支持不再仅有 Where 等最基础的功能。

  加强的设计器支持

  Beta 2 的 DLinq 设计器较 Beta 1 有相当的改进。主要包括增强的自定义功能,如实体类命名空间设置;同时,界面效果也更漂亮了。稳定性和速度都有了大幅提升,这一点在我个人当前的 Soobb 项目中深有体会。编译器也更稳定了,各种奇怪的 BUG 减少了许多。你可以看到,现在的聚合与继承的连接线终于有了区别,并且采用了折线。不过,似乎 Partial 实体类在 IDE 中会出现一个奇怪的错误,提示两个类名称冲突。

  其他的一些特性

  既然这里谈的是新特性,那就多说两句吧。作为完整功能测试版,Beta 2 拥有所有 Visual Basic 9 的新特性,同时包含了 Go-Live 许可证。这意味着未来的 Visual Studio 2008 版本(Beta 3?RC?)将不会作出大的变动。是的,您已经可以将您的项目迁移至 2008,不会有任何问题——.Net Framework 3.5 是完全向下兼容的。CLR 与 2.0 没有变化,所以 ASP.Net 的运行库始终是 2.0(这一点曾令我大惑不解)。

  匿名方法为程序员提供了更高的灵活性,不再需要不停地定义 Private Sub 了;可为空类型语法增强也终于具备了。这个功能似乎是极小的语法糖,但是偶尔也有些作用。

  Visual Basic 的匿名方法

  Dim Temp = (Function (()Function(l As Integer) l + 1)(30)

  Console.WriteLine(Temp)

  结语

  最近真是忙得过头,昨天才去安装的服务器,还在配置中... Soobb 开发周期又紧,恐怕中旬以前没有办法再写文章了。顺便预告一下下一个系列:LINQ 性能分析系列,欢迎您对此关注。还有一点提醒一下,就是 Beta 2 中的 DLinq 仍然不支持本地集合查询。

  温故而知新

  Visual Basic 9 不完全入门系列(1) : 语法糖

  Visual Basic 9 不完全入门系列(2) : 语法增强

  Visual Basic 9 不完全入门系列(3) : LINQ 简介

  Visual Basic 9 不完全入门系列(4) : LINQ 进阶

  Visual Basic 9 不完全入门系列(5) : DLinq 简介

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章