1

私はクラス ( 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;

とメソッドMyBasicHttpBindingShouldSerializeProxyAddress()

これらのいずれもXmlSerializer、シリアル化の試行を停止していませんHttpBindingBase.ProxyAddress

HttpBindingBase.ProxyAddressしたがって、基本的にはシリアライズしたくありませんが、方法がわかりません。

4

0 に答える 0