我正在重写WCF中的旧版asp.net Web服务(.asmx)。遗留服务公开了XmlNode类型的方法参数。在WCF中似乎无法序列化XmlNode类型。如果我尝试将arg更改为服务端的字符串,则期望XmlNode的使用者(.net类库服务主机包装器)会抱怨并且不会成功执行。我无法更改服务主机。有什么见解吗?
答案 0 :(得分:1)
您可以将其替换为XmlElement
或XElement
。 ASMX服务可以返回XmlNode
,但不支持它的所有子类 - 例如,如果您尝试返回XmlAttribute
,它将失败。如果你已经回归XmlElement
,那你很好;如果您要返回XmlDocument
,则可以将其更改为返回DocumentElement
其属性(XmlElement
)。