private bool InternalNextResult(bool first) { if (!first) { this.InitResultData(); this.SkipRootContents(); } if (XmlaClient.IsEmptyResultS(this.xmlReader)) { if (this.IsAffectedObjects) { throw new AdomdUnknownResponseException(XmlaSR.UnknownServerResponseFormat, "Got an empty result inside AffectedObjects"); } this.RowsetName = null; this.xmlReader.ReadStartElement("root", "urn:schemas-microsoft-com:xml-analysis:empty"); this.GenerateSchemaForEmptyResult(); this.emptyResult = true; this.EnsureResultForNewRowset(); return(true); } else { if (this.xmlReader.IsStartElement("root", "urn:schemas-microsoft-com:xml-analysis:rowset")) { this.RowsetName = this.xmlReader.GetAttribute("name"); this.rowsetNames.Add(this.RowsetName); XmlaClient.StartRowsetResponseS(this.xmlReader); this.LoadResponseSchema(); this.dataReady = true; this.emptyResult = false; this.EnsureResultForNewRowset(); return(true); } if (first) { throw new AdomdUnknownResponseException(XmlaSR.UnknownServerResponseFormat, "Expected at least one root element"); } this.CheckForMessages(); XmlaClient.EndElementS(this.xmlReader, this.IsAffectedObjects ? "AffectedObjects" : "results", "http://schemas.microsoft.com/analysisservices/2003/xmla-multipleresults"); this.isMultipleResult = false; return(false); } }