Esempio n. 1
0
        /// ////////////////////////////////////////////
        public virtual CResultAErreur Serialize(C2iSerializer serializer)
        {
            int            nVersion = GetNumVersion();
            CResultAErreur result   = serializer.TraiteVersion(ref nVersion);

            if (!result)
            {
                return(result);
            }
            serializer.TraiteString(ref m_strNomConvivial);
            serializer.TraiteString(ref m_strNomPropriete);
            if (m_typeDonnee == null)//correction : il arrive que le type soit null à la savuegarde
            {
                m_typeDonnee = new CTypeResultatExpression();
            }
            m_typeDonnee.Serialize(serializer);
            if (nVersion > 2)
            {
                serializer.TraiteBool(ref m_bHasSubProprietes);
            }

            //Si le nom de propriete commence par #TS|., supprime le #TS.
            if (serializer.Mode == ModeSerialisation.Lecture &&
                m_strNomPropriete.StartsWith("#TS|."))
            {
                m_strNomPropriete = m_strNomPropriete.Substring(5);
            }
            return(result);
        }
Esempio n. 2
0
        /// ///////////////////////////////////////////////////////////
        public override CResultAErreur Serialize(C2iSerializer serializer)
        {
            int            nVersion = GetNumVersion();
            CResultAErreur result   = serializer.TraiteVersion(ref nVersion);

            if (!result)
            {
                return(result);
            }
            result = base.Serialize(serializer);
            if (!result)
            {
                return(result);
            }
            bool bHasTypeSource = m_objetPourAnalyseSource != null;

            serializer.TraiteBool(ref bHasTypeSource);
            if (bHasTypeSource)
            {
                switch (serializer.Mode)
                {
                case ModeSerialisation.Ecriture:
                    CTypeResultatExpression tp = m_objetPourAnalyseSource.TypeResultatExpression;
                    result = tp.Serialize(serializer);
                    break;

                case ModeSerialisation.Lecture:
                    CTypeResultatExpression tpLecture = new CTypeResultatExpression();
                    result = tpLecture.Serialize(serializer);
                    m_objetPourAnalyseSource = new CObjetPourSousProprietes(tpLecture);
                    break;
                }
            }
            else
            {
                m_objetPourAnalyseSource = null;
            }
            return(result);
        }