public override void Deserialize(IntermediateFormatReader reader) { base.Deserialize(reader); reader.RegisterDeclaration(RuntimeDetailObj.m_declaration); IScalabilityCache scalabilityCache = reader.PersistenceHelper as IScalabilityCache; while (reader.NextMember()) { switch (reader.CurrentMember.MemberName) { case MemberName.OuterScope: this.m_outerScope = (IReference <IScope>)reader.ReadRIFObject(); break; case MemberName.DataRegionDef: { int id = reader.ReadInt32(); this.m_dataRegionDef = (AspNetCore.ReportingServices.ReportIntermediateFormat.DataRegion)scalabilityCache.FetchStaticReference(id); break; } case MemberName.DataRows: this.m_dataRows = reader.ReadRIFObject <ScalableList <DataFieldRow> >(); break; case MemberName.RunningValueValues: this.m_rvValueList = reader.ReadListOfRIFObjectArrays <AspNetCore.ReportingServices.ReportIntermediateFormat.DataAggregateObjResult>(); break; case MemberName.RunningValuesInGroup: this.m_runningValuesInGroup = reader.ReadListOfPrimitives <string>(); break; case MemberName.PreviousValuesInGroup: this.m_previousValuesInGroup = reader.ReadListOfPrimitives <string>(); break; case MemberName.GroupCollection: this.m_groupCollection = reader.ReadStringRIFObjectDictionary <IReference <RuntimeGroupRootObj> >(); break; case MemberName.OuterDataAction: this.m_outerDataAction = (DataActions)reader.ReadEnum(); break; default: Global.Tracer.Assert(false); break; } } }