web-services – 当有其他提供者时,如何在1个提供者的消费者端向WS操作添加元素?

前端之家收集整理的这篇文章主要介绍了web-services – 当有其他提供者时,如何在1个提供者的消费者端向WS操作添加元素?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我创作了一个WSDL和实现AddCar操作的消费者/客户端,它具有模型和颜色的数据.现在,一个WS生产者/服务器也希望拥有长度数据.我认为其他生产商由于实施外包而难以适应这种变化.我的选择包括

>进行新操作AddCarWithLength
>使用相同的操作制作2个版本的WSDL和消费者代码
>只需使用可选长度更新WSDL,并仅为需要它的生产者包含操作数据.
>只需使用0-N name-vaue对元素更新WSDL,并仅为需要它的生产者包含操作数据.
>要求客户他们让实施WS生产商的公司更新它.

选项:

>是不可能的
>我在使用者/客户端生成了C#类,因此会有两个代码集.我仍然必须知道(可能使用config参数或smthn)版本生产者/服务器使用的版本
>意味着我只需知道与之交谈的生产者/服务器.
>与3相同,但将来可以扩展
>可能有问题

题:
在要求所有生产者进行更新时,做到这一点的正确/最佳方法是不现实的?

解决方法

WSDL以珍贵的定义而闻名.首先,服务应始终设计为清晰的使用情况和未来.无论如何,现在我的理解是向现有的WCF服务添加一个属性(数据元素 – 长度).我的建议是,

>分析并添加您的自定义类,并将其命名为数据协定,并添加到WCF操作并将其作为新的接口/操作合同公开.

例如.
在Class car中,有一个数据成员作为Properties.
使用in属性定义所有分析结果元素,如长度,宽度,颜色,重量等.
还要添加一个Dictionary< string,string> CustomAttributes;所以将来你可以使用它.

>与上面类似,但如果你没有太多时间.没有任何分析只需添加一个字典< string,string>参数;并公开新合同并利用它.

原文链接:https://www.f2er.com/html/227071.html

猜你在找的HTML相关文章