使用使用SvcUtil.exe创建的服务引用托管.NET服务时出现问题:Wrapped模式下的XmlSerializer错误

时间:2011-06-06 09:00:46

标签: c# asp.net wcf web-services xml-serialization

对不起标题,但这是我现在能做的最好的......

我的问题如下:

  • 这里http://www.opcfoundation.org/webservices/XMLDA/1.0/我使用VS2010来创建服务引用。我创造它没有任何问题。

  • 我想实现创建我的服务的服务接口。所以我实现了Service接口。

  • 我创建了一个svc文件:

    <%@ ServiceHost Language =“C#”                 调试=“真”                 Service =“班级的全名                 (实现服务接口的类)“%>

好的,我明白了:

  

XmlSerializer属性   System.Xml.Serialization.XmlAttributeAttribute   在LocaleID中无效。只要   XmlElement,XmlArray,XmlArrayItem,   XmlAnyAttribute和XmlAnyElement   属性是支持的   IsWrapped是真的。

让我指出以下几点: 不要问我Web.config文件,是否有服务模型配置设置,它没有什么不同,同样的问题仍然存在。

问题是什么???

我一直在想解决这个问题,我想要注意的是,在过去,有人使用wsdl.exe来创建一个使用WebService和{{{ 1}}作为服务属性,该方法不会导致此错误。 但我想使用WCF ...

三江源

2 个答案:

答案 0 :(得分:1)

This link会帮助你,它可以直接解释问题和可能的解决方法。

答案 1 :(得分:0)

我在OPC DA规范中遇到了同样的问题。我切换到旧式的.NET Webservices(Web引用而不是服务引用)。 .NET Web服务确实接受OPC基础的WSDL规范。

这些是我创建这样一个代理的步骤:

  1. 创建一个.NET v2 项目。
  2. http://www.opcfoundation.org/webservices/XMLDA/1.0
  3. 添加网络引用
  4. 调整项目设置,以便再次编译.NET v4。
  5. 使用代理。
  6. 这不是一个理想的解决方案,但它可以创建自己的包装器。