我有一个WCF运营合同如下。我有一个要求,其中该操作合同应该有一个额外的参数来处理客户端场景。但我不能改变其他各种客户使用的操作合同签名。
据我检查过WCF中的操作合同,不能有可选参数。还有其他建议吗?
Code GetDataElementes(String MyType, String MyUniqueID, out DataTable dTableOut);
答案 0 :(得分:1)
WCF操作可以有可选参数。任何可以为空的参数都是可选的。客户端可以传递null,或者他们可以省略他们发送的XML中的参数。
此功能对于向后兼容性非常重要。
只需创建一个包含所有参数的方法,并处理一些参数为空的情况。
关于out参数:创建DTO类并返回其实例通常更好。所有输出参数都成为该类的属性。
答案 1 :(得分:0)