我有一个公开以下.NET Web服务(使用ASMX ...还没有升级到WCF还):为什么我无法在.NET asmx Web服务中公开接口?
public class WidgetVersion1 : IWidget {}
public class WidgetVersion2 : IWidget {}
当我尝试绑定到Web服务,我得到下面的序列化错误:
无法序列化IWidget类型的成员WidgetVersion1,因为它是一个接口。
我已经尝试添加各种属性的iWidget的接口(XmlIgnore
,SoapIgnore
,NonSerialized
),但它们不是一个接口上都有效。
有谁知道为什么我无法公开接口?我假设WSDL不支持接口,但不能通过简单的序列化接口来解决这个问题。除了从WidgetVersion1和WidgetVersion2类定义中移除IWidget接口之外,是否还有其他解决方法?
感谢您的明确解释;它非常有意义。 – mcliedtk 2010-04-05 21:57:18
我想知道是否是这种情况,然后再次阅读这个问题,尽管他试图使用一个有接口的类。 – Joshua 2010-04-06 02:28:24