2

Nullable<bool>XML ファイルからデシリアライズしようとしています。私の期待は、私の XMLElement で見つからなかった XMLAttribute であり、見つかった場合はornullになるということでした。シリアライズも同様。変数がnullでない場合、変数が書き込まれます。truefalse

とにかく、XML をデシリアライズしようとするたびに anInvalidOperationExceptionがスローされます。

私のクラスは次のようになります

[XMLArray("Users")]
public class User
{
    [XMLAttribute("copy")]
    public bool? copy;
}

何か案は?

4

1 に答える 1

5
[XMLArray("Users")]
public class User
{
    [XmlIgnore]
    public bool? m_copy;

    [XmlAttribute("copy")]
    public string copy
    {
        get { return (m_copy.HasValue) ? m_copy.ToString() : null; }
        set { m_copy = !string.IsNullOrEmpty(value) ? bool.Parse(value) : default(bool?); }
    }
}

sylonによってリンクされた投稿への回答から解決策を得ました。どうもありがとう!

于 2012-07-30T07:32:59.400 に答える