当前位置:  开发笔记 > 运维 > 正文

通过Web服务发送复杂数据的首选方法是什么?

如何解决《通过Web服务发送复杂数据的首选方法是什么?》经验,为你挑选了0个好方法。

这是2008年,我仍然在这个问题上挣扎.所以我正在开发一个Web方法,需要传递一个复杂类型并从中返回.我正在考虑的两个选项是:

    使用数据和行为传递和返回实际业务对象.运行wsdl.exe时,它将自动创建仅包含数据部分的代理类,这些代理类将自动转换为服务器端的实际业务对象.在客户端,他们只会使用哑代理类型,他们必须将它们映射到一些他们认为合适的实际业务对象.这里的一个很大的缺点是,如果我"拥有"服务器端和客户端端,并且我想使用相同的一组真实业务对象,我可能会遇到名称冲突等问题(由于真实对象和代理名称相同.)

    忘记尝试传递"真正的"业务对象.相反,只需创建简单的DataTransfer对象,我将手动来回映射到我的实际业务对象.无论如何,它们仍然被wsdl.exe复制到新的代理对象,但至少我并没有欺骗自己认为Web服务本身可以处理具有业务逻辑的对象.

顺便说一下 - 有谁知道如何告诉wsdl.exe 不要复制该对象?我们不应该只是告诉它,"嘿,在这里使用现有类型.不要复制它!"

无论如何,我现在已经确定了#2,但我很好奇你们都在想什么.我有一种感觉,有办法更好的方法一般要做到这一点,我可能甚至不上我的所有点完全准确,所以请让我知道你的经历是什么.

更新:我刚刚发现VS 2008在添加"服务引用"时可以选择重用现有类型,而不是在代理文件中创建全新的相同类型.甜.

推荐阅读
殉情放开那只小兔子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有