wcf服务与params

时间:2011-11-03 14:52:03

标签: c# .net wcf c#-4.0 wcf-binding

合同def是

    [OperationContract]
    DataSet myfunc(string a, params object[] args);

但代理是由添加服务引用向导

生成的
    public System.Data.DataSet myfunc(string a, object[] args) {
        return base.Channel.GetDataSet(a, args);
    }

是什么给出的?两者都是.net 4.0项目

我可以更改代理但更新将在更新时丢失

1 个答案:

答案 0 :(得分:1)

不确定您的问题是什么,但我猜您因为在那里使用params而遇到问题。

WSDL不处理类似的可选参数。

这就是你得到的东西吗?

如果是这种情况,那么您最好的选择可能是代理生成的代码正在执行的操作。传递一个对象数组(尽管你可能会遇到麻烦,试图传递任何旧对象,因为有些对象不可序列化或可互操作)。

我不确定你要用可选参数做什么,所以我不能确切地告诉你该做什么。