【发布时间】:2010-12-17 15:38:16
【问题描述】:
在不要求客户端更新其 WSDL 的情况下,处理向现有操作添加新(可选)参数的最佳方式是什么?我不想更新命名空间来描述新版本的服务合同,因为这应该与旧客户端向后兼容。
我应该添加一个带有新参数的新操作,作为重载吗?还是应该将参数添加到现有操作中?
这是我的操作:
[OperationContract]
MyResponse GetData();
应该是:
[OperationContract]
MyResponse GetData();
[OperationContract]
MyResponse GetData(string filter);
或者更简单,只需将其更改为:
[OperationContract]
MyResponse GetData(string filter);
后一种选择似乎最好,根据我的参考书,“对客户端的影响是没有的。新参数在服务中初始化为默认值。”WCF 是否将其初始化为所谓的默认值?如果有,默认值是多少?
【问题讨论】:
标签: wcf web-services wsdl optional-parameters