私はクラス ( 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.BasicHttpBindingadd overrides ビットを試してみましたが、どちらも機能しませんでした。
私も追加しようとしました:
[XmlIgnore]
public bool ProxyAddressSpecified = false;
とメソッドMyBasicHttpBinding。ShouldSerializeProxyAddress()
これらのいずれもXmlSerializer、シリアル化の試行を停止していませんHttpBindingBase.ProxyAddress。
HttpBindingBase.ProxyAddressしたがって、基本的にはシリアライズしたくありませんが、方法がわかりません。