强制在来自 NET Web 服务代理类的 SOAP 请求中包含默认值属性属性

Posted

技术标签:

【中文标题】强制在来自 NET Web 服务代理类的 SOAP 请求中包含默认值属性属性【英文标题】:Force to include the Default value Attribute property in the SOAP Request from NET Web Service Proxy class 【发布时间】:2014-07-01 01:15:21 【问题描述】:

我已将 Web 服务引用添加到公共域 Web 服务。

在调用其中一个 Web 服务 API 时,它需要对象的所有属性的值。但可以观察到,如果属性具有以下属性“DefaultValue”。它根本不包含在 SOAP 请求中。

    [System.Xml.Serialization.XmlAttributeAttribute()]
    [System.ComponentModel.DefaultValueAttribute(false)]
    public bool replaceAll 
        get 
            return this.replaceAllField;
        
        set 
            this.replaceAllField = value;
        
    

不知何故,这会造成问题并使 Web 服务调用失败。是否有任何 Web 服务代理选项来强制 .NET 代理类将此属性包含在 SOAP 请求中

【问题讨论】:

【参考方案1】:

我在向服务发送 SOAP 请求时遇到了类似的问题,然后我意识到应该指定另一个布尔值才能将其包含在请求中:属性名称 +“指定”。

在您的情况下,它是 replaceAllSpecified。这应该设置为 true!

【讨论】:

以上是关于强制在来自 NET Web 服务代理类的 SOAP 请求中包含默认值属性属性的主要内容,如果未能解决你的问题,请参考以下文章

强制 ASMX 代理使用 XmlSerializer 而不是 DataContractSerializer

强制 Soap/WCF 使用 HTTP 而不是 TCP 协议

如何强制更新/防止在 Linux 上运行并由 nginx 反向代理服务器托管的 .NET Core Web 应用程序的 HTML 缓存

Fiddler 没有从 ASP.NET 网站嗅探 SOAP 流量

如何解析从文件加载的soap消息?

急啊!c#怎么通过SOAP调用服务器的方法,已经知道方法名