ITPub博客

首页 > Linux操作系统 > Linux操作系统 > var vs ref (DELPHI和.net的互操作-1)

var vs ref (DELPHI和.net的互操作-1)

原创 Linux操作系统 作者:1000copy 时间:2007-01-15 21:16:13 0 删除 编辑
通过Remobject 达到delphi和c#.net的互操作。[@more@]

公司有一个产品,后台采用.net开发,前台是delphi。

通过Remobjects可以达到两者的互通,而且比较方便。

1. 获得远程asmx的地址,跟着一个?wsdl,可以把.net webservices导入到RO内,注意在点击import之前选择CheckBox(Wrapper .net parameters)

2. CoServices.create 的参数要传入msg和channel,其中的channal需要使用winhttp,msg需要采用soap

3. 调用对应services内的方法即可

以上当然是比较刻板的一些内容,照做即可。值得说的是:delphi调用.net的services,不但可以传值,也可以传引用,比如delphi的var参数,对应.net的ref参数。

另外一个delphi中的数据集dataset是非常好用的,在系统开发中也非常常用,但是.net中并不直接存在这个对应的类型,更加没有办法直接通过网络传递了。

如何让他们直接的对话呢?我们以前采用的方式是通过自己打包dataset到xml的方式,看起来很麻烦,现在准备采用的是csv方式,也就是说,。net把数据保存到StringStream内,通过String传递给客户端,客户端通过clientdataset或者ado,直接装入csv即可。

这样做有些问题。首先是二进制的内容肯定不支持的了,其次字段内有nr的也没有办法。

不过我们现在这个系统不需要二进制的,有nr的可以做一个转义处理就好。不需要做xml-object mapping,也不必写一些mapping class ,转换为csv,从csv到dataset,都是.net dataset,delphi dataset 本身就有的功能。

因此相对编码为xml的来说,代码有少很多,还是要方便的多了。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/764121/viewspace-890578/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
请登录后发表评论 登录
全部评论
  • 博文量
    32
  • 访问量
    1427615