Два вопроса про XML сериализацию
От: FallenGameR http://fallengamer.livejournal.com/
Дата: 21.09.06 05:03
Оценка:
1. При использовании BinaryFormatter можно было воспользоваться IDeserializationCallback, который вызывался в конце десериализации. Если нечто подобное для XmlSerializer?
2. Почему при _сериализации_ Root появляется в XML только если раскомментировать set? Если сриализовывать поле — коллекцию, то хватает get.
public class Literal
{
    private string m_self;

    public Literal( )
    {
        m_self = "";
    }
    public Literal( string self )
    {
        m_self = self;
    }

    public override bool Equals( object obj )
    {
        Literal other = obj as Literal;
        if( other == null ) return false;

        return other.m_self==m_self;
    }
    public override int GetHashCode( )
    {
        return base.GetHashCode( );
    }
    public override string ToString( )
    {
        return m_self.ToString( );
    }

    [XmlAttribute( DataType = "string", AttributeName = "text")]
    public string Self
    {
        get { return m_self; }
        set { m_self = value; }
    }
}

public class CFGrammar
{
    private Literal m_root;
    public CFGrammar(  )
    {
        m_root = new Literal( );
    }
    public Literal Root
    {
        get { return m_root; }
        //set { m_root = value; }
    }
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.