李维的 Demo 中可以改进的地方

Web/WebService 专栏收录该内容
24 篇文章 0 订阅

    李维这次的内地之行(见《感受李维》一文)可以说在 Borland 的用户掀起了一场风暴,在几个比较大的程序员论坛上,这是这几最热门的话题之一,我在 CSDN 上发了一贴关于他上海之行的文字,结果成为我发过的有史以来反响最强的一个贴子。
    在这次 Borland 举办的 WebService 技术研讨会上,李维做了几个 Demo 来演示 Borland 的 WebService 解决方案,这是几个非常好的 Demo ,它们以一种很简单的方式,较为全面地展示了用 Borland 的几个主要产品进行 SOAP/WebService 开发的实现,但是我认为其中还是有地方可以改进。

    李维也是用打了 Update 2# 的 Delphi 6,这个版本的 Delphi 6 在 SOAP/WebService 应用开发方面有比较大的改进(见《DELPHI 6.02 抢先研究 -- BizSnap/SOAP/WebService 之四》一文),其中最大的改进之一便是 WSDL Import Wizard 。新的 WSDL Import Wizard 主要改进在:

  1.  增加了一个导入结果查看界面,可以以树形显示导入的 WSDL 中所含的接口内容,并且可以预览生成的接口单元;
  2. 生成的接口单元包含了 HTTP 远程接口对象生成;
  3. 支持新的 SOAP 标准,可以导入 Visual Studio.net 生成的 WSDL。 

    而上述几点中的第二点就是李维可以改进的一点。在《DELPHI 6 抢先研究 -- BizSnap/SOAP/WebService 之一》一文的例子中所采用的方法就是李维的 Demo 中所用的方法,即放上一个 HTTPRIO 控件,设置好 URL 属性,再用如下的代码来访问远程接口:

Var
  p : ISoapHello;
begin
  p := HTTPRIO1 As ISoapHello;
  Label1.Caption := p.GetHello( StrToInt( Edit1.Text ) );
end;

    但是因为前面所说的 WSDL Import Wizard 的第二点改进,所以已经可以不用这么麻烦了,不需要再放 HTTPRIO 控件,而且代码也简单得只要一句:

  Label1.Caption := GetISoapHello.GetHello( StrToInt( Edit1.Text ) );

    其中的 GetISoapHello 是一个函数,返回一个实现 ISoapHello 远程接口的对象,在导入 WSDL 时生成的接口单元文件里定义并实现的,它的功能就是新建一个 HTTPRIO 对象,并根据 WSDL 设置好所有的属性。

[Mental Studio]猛禽 Apr.13-02

  • 0
    点赞
  • 1
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值