我有一个MyBasicHttpBinding
继承自BasicHttpBinding
它的类 () 又实现了HttpBindingBase
.
HttpBindingBase
有一个属性 ProxyAddress。
我想序列化MyBasicHttpBinding
,但我想忽略HttpBindingBase.ProxyAddress
.
我有一个方法MyBasicHttpBinding
叫做ToXml()
它的实现看起来像这样:
public string ToXml()
{
var overrides = new XmlAttributeOverrides();
overrides.Add(this.GetType(), "ProxyAddress", new XmlAttributes { XmlIgnore = true });
var serializer = new XmlSerializer(this.GetType(), overrides);
var builder = new StringBuilder();
var writer = new StringWriter(builder);
serializer.Serialize(writer, this);
return builder.ToString();
}
我已经尝试System.ServiceModel.BasicHttpBinding
过添加覆盖位,但也没有用。
我也尝试过添加:
[XmlIgnore]
public bool ProxyAddressSpecified = false;
ToMyBasicHttpBinding
和一个ShouldSerializeProxyAddress()
方法。
这些都没有停止XmlSerializer
尝试序列化HttpBindingBase.ProxyAddress
.
所以基本上我不想HttpBindingBase.ProxyAddress
序列化,但无法弄清楚如何。