public void Deserialize(IntermediateFormatReader reader) { ParameterInfoCollection parameterInfoCollection = null; ParameterInfoCollection parameterInfoCollection2 = null; reader.RegisterDeclaration(ReportSnapshot.m_Declaration); while (reader.NextMember()) { switch (reader.CurrentMember.MemberName) { case MemberName.ExecutionTime: this.m_executionTime = reader.ReadDateTime(); break; case MemberName.Report: this.m_report = reader.ReadReference <Report>(this); break; case MemberName.HasDocumentMap: this.m_hasDocumentMap = reader.ReadBoolean(); break; case MemberName.HasShowHide: this.m_hasShowHide = reader.ReadBoolean(); break; case MemberName.HasBookmarks: this.m_hasBookmarks = reader.ReadBoolean(); break; case MemberName.RequestUserName: this.m_requestUserName = reader.ReadString(); break; case MemberName.ReportServerUrl: this.m_reportServerUrl = reader.ReadString(); break; case MemberName.ReportFolder: this.m_reportFolder = reader.ReadString(); break; case MemberName.Language: this.m_language = reader.ReadString(); break; case MemberName.ProcessingMessages: this.m_processingMessages = reader.ReadListOfRIFObjects <ProcessingMessageList>(); break; case MemberName.Parameters: parameterInfoCollection = new ParameterInfoCollection(); reader.ReadListOfRIFObjects(parameterInfoCollection); break; case MemberName.ImageChunkNames: this.m_cachedDatabaseImages = reader.ReadStringStringHashtable <Dictionary <string, string> >(); break; case MemberName.GeneratedReportItemChunkNames: this.m_cachedGeneratedReportItems = reader.ReadStringStringHashtable <Dictionary <string, string> >(); break; case MemberName.HasUserSortFilter: this.m_hasUserSortFilter = reader.ReadBoolean(); break; case MemberName.AggregateFieldReferences: this.m_aggregateFieldReferences = reader.ReadStringListOfStringDictionary(); break; case MemberName.SnapshotParameters: parameterInfoCollection2 = (ParameterInfoCollection)reader.ReadRIFObject(); break; case MemberName.DefinitionHasDocumentMap: { object obj = reader.ReadVariant(); if (obj != null) { this.m_definitionHasDocumentMap = (bool)obj; } break; } case MemberName.DocumentMapRenderFormat: this.m_documentMapRenderFormat = reader.ReadString(); break; default: Global.Tracer.Assert(false); break; } } this.m_parameters = parameterInfoCollection; if (parameterInfoCollection != null && parameterInfoCollection.Count != 0) { return; } if (parameterInfoCollection2 != null) { this.m_parameters = parameterInfoCollection2; } }