我的WCF服务包含如下操作:
void Provide(IEnumerable<IMyInterface>);
我在我的客户端上创建了一个服务引用,并选择了IEnumerable
作为集合的类型。
问题是当我尝试在ObservableCollection
类型为IMyInterface
的客户端上调用此方法时,它失败了,因为该方法的签名奇迹般地变为:
void Provide(IEnumerable<object>);
所以基本上服务引用都驳回了我的集合的类型。
我认为这是因为IMyInterface
没有签约,但事实证明你不能从界面中创建DataContract
。
答案 0 :(得分:0)
最终我编辑了自动生成的Reference.cs文件并更改了方法签名。