/// //////////////////////////////////////////// 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); }
/// /////////////////////////////////////////////////////////// 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); }