Web Service 服务器是Delphi开发的,客户端是C#开发的;现在有一个关键问题本人不明白该如何处理,请高手指点:
问题是:WebService访问数据库后应该返回什么样的结果才能够自动转换成客户端能解析的Soap封包?

解决方案 »

  1.   

    在C#解决方案资源管理器|引用|添加web引用,输入web service wsdl的URL
    可以生成对应的C#的接口说明对数据库中的数据封装格式,需要有一个自定义的格式
      

  2.   

    自定义的格式?我就是担心这一点,难道要自己来进行到Soap 封包的转换?
      

  3.   

    当然是自己定义格式了,你要是不自己定义使用,Borland的或者Microsoft的DataSet格式也可以,但在两端必定要有一端是要自己编码实现的,还是自己定义的好一点。
      

  4.   

    如果要自己定义的话,我就有一个很大的疑问,web service 本身就可以跨越开发环境,现在我做一个这样的假设,如果我做了一个结合数据库的web service,现在对外公布注册到internet上了,别人搜索到我的服务,按理说是应该可以直接调用才对啊,现在如果要自定义格式,那我这个假设的web service 不就不能被delphi以外工具开发的客户端所调用了?
    我现在一直困扰的就是,我如何能编写一个web service,它访问数据库后返回的结果应该进行如何处理才能够传到客户端后被很容易的还原成表格数据?
      

  5.   

    现在我也尝试在服务器端采用自定义的数据类型,即从TRemotable继承,这样虽然传送不用自己干预,但问题是客户端不能解析这种自定义的数据类型,我总觉得现在我所碰到的问题似乎与web service 的理念有种冲突,可能是我理解的不透,真的不知到该如何实施了,本人刚接触web service