科技行者

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

知识库

知识库 安全导航

至顶网软件频道基础软件Delphi.NET多层应用系统开发技术研讨

Delphi.NET多层应用系统开发技术研讨

  • 扫一扫
    分享文章到微信

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

其实要让新的.NET应用系统和现有的Midas/DataSnap应用系统整佑在一起不困难。

作者:李维 来源:blog 2007年10月31日

关键字: Delphi 应用系统 开发

  • 评论
  • 分享微博
  • 分享邮件
从上个星期就开始有朋友问我为什么很久没有更新Blog了,其实我想我写Blog已经很勤快了,这次10多天没有更新Blog想当然是我又开始出差了。上星期台湾进行了『Delphi.NET多层应用系统开发技术研讨会』,在DevCo重新在台湾举办活动1,2个月之后,的确发现慢慢的一些客户开始回流来参加研讨会了,这是个好现象,也让我有机会和一些朋友谈谈他们的工作近况以及他们希望能够听到什么主题的研讨会。而之所以DevCo会在上星期举行『Delphi.NET多层应用系统开发技术研讨会』就是因为许多朋友都在询问如何把应用程序移植到.NET以及如何让他们能够使用ASP.NET开发新的Web应用程序但是又能够同时使用现有的Midas/DataSnap应用系统。

  其实要让新的.NET应用系统和现有的Midas/DataSnap应用系统整佑在一起不困难,要解决的问题就只是让.NET客户端呼叫到Midas/DataSnap应用系统以及如何在两个执行环境中进行数据型态的转换。

  
  使用.NET的InterOp2技术就可以让.NET客户端呼叫到Midas/DataSnap应用系统,至于数据型态转换就有点困难。最简单的想法就是让两边都使用XML来交换数据,但是唯一的麻烦就是Midas/DataSnap在许多方法中都是以OleVariant的型态来封装数据,因此.NET的客户端必须知道如何处理Midas/DataSnap传递来的OleVariant资料封包,并且从其中撷取出以XML封装性的真正数据。

  
  还好我们可以在Delphi『隐诲』的文件中找到一丝曙光:

  

  原来OleVariant/Variant可以对映成.NET的System.Object或是Delphi.NET重新定义的TObject。

  有了这两个知识之后我们就可以让.NET客户端和Midas/DataSnap应用系统整合了,在『Delphi.NET多层应用系统开发技术研讨会』中,我从 BDE的项目开始讨论如何移植到.NET,接着讨论dbExpress项目,最后讨论移植Midas/DataSnap应用系统整合并且开发.NET的Windows From和ASP.NET应用程序来呼叫并且使用Midas/DataSnap应用系统提供的服务和数据, 例如下图是Win32 VCL Form以及.NET Windows Form同时呼叫COM+的Midas/DataSnap服务器的执行画面:

  

  而下面是最后在研讨会中的范例,我使用Delphi 2006开发一个ASP.NET的应用程序来呼叫Midas/DataSnap应用系统提供的服务和数据并且显示在浏览器中,您可以看到使用Delphi 7开发的VCL Form应用程序也在执行,而且Midas/DataSnap的COM+服务器也在运转中同时提供Win32和.NET的客户端服务。

  

  《Delphi.NET多层应用系统开发技术研讨会》是有关Delphi/Delphi.NET多层应用系统开发的第一个研讨会,在下次DevCo将会举办第2次的『Delphi.NET多层应用系统开发技术研讨会』,内容是讨论如何在桌面型,主从架构,以及多层架构中都可以重复使用由ECO开发出来的企业逻辑模型。

  

  我知道我大陆的同事这星期也要开始在4个城市进行Delphi2006技术研讨会,这是3,4年以来我第一次无法去大陆进行研讨会,在此先祝福他们顺利,成功了。

  

  

  

查看本文来源

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

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

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