使用通过SvcUtil.exe创建的服务引用来承载.NET服务的问题:包装模式下XmlSerializer错误

问题描述 投票:4回答:2

我的问题是以下:

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

  • 我想实现创建我的服务的服务接口。因此,我实现了Service接口。

  • 我创建一个svc文件:

    <%@ ServiceHost Language="C#" 
                Debug="true" 
                Service="Full name of the class 
                (the class implementing the Service interface)" %>
    

好,我知道了:

XmlSerializer属性System.Xml.Serialization.XmlAttributeAttribute在LocaleID中无效。仅XmlElement,XmlArray,XmlArrayItem,XmlAnyAttribute和XmlAnyElement属性IsWrapped为true时支持。

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

怎么了?

我一直在想解决这个问题,我想指出,过去,其他人使用wsdl.exe来创建一个使用WebServiceWebMethod作为服务的asp.net服务引用。属性,该方法不会导致此错误。但我想使用WCF ...

c# asp.net wcf web-services xml-serialization
2个回答
1
投票

[This link将为您提供帮助,它可以直接说明问题和可能的解决方法。


0
投票

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

这些是我创建此类代理的步骤:

  1. 创建一个.NET v2项目。
  2. http://www.opcfoundation.org/webservices/XMLDA/1.0添加Web引用
  3. 调整项目设置,使其再次为.NET v4编译。
  4. 使用代理。

这不是理想的解决方案,但是创建自己的包装器很重要。

© www.soinside.com 2019 - 2024. All rights reserved.