這聽起來像你想使用尋呼餅乾。例如查看鏈接和更多信息。
https://msdn.microsoft.com/en-us/library/gg328046.aspx
編輯
您需要重新創建你的循環的每一次迭代尋呼餅乾,但它的基礎上的現有尋呼的cookie。
下面的代碼來自我鏈接到的示例。
public string CreateXml(string xml, string cookie, int page, int count)
{
StringReader stringReader = new StringReader(xml);
XmlTextReader reader = new XmlTextReader(stringReader);
// Load document
XmlDocument doc = new XmlDocument();
doc.Load(reader);
return CreateXml(doc, cookie, page, count);
}
這第一種方法需要您的FetchXml,pagingcookie,當前頁面和項目數每頁返回。它依次調用以下:
public string CreateXml(XmlDocument doc, string cookie, int page, int count)
{
XmlAttributeCollection attrs = doc.DocumentElement.Attributes;
if (cookie != null)
{
XmlAttribute pagingAttr = doc.CreateAttribute("paging-cookie");
pagingAttr.Value = cookie;
attrs.Append(pagingAttr);
}
XmlAttribute pageAttr = doc.CreateAttribute("page");
pageAttr.Value = System.Convert.ToString(page);
attrs.Append(pageAttr);
XmlAttribute countAttr = doc.CreateAttribute("count");
countAttr.Value = System.Convert.ToString(count);
attrs.Append(countAttr);
StringBuilder sb = new StringBuilder(1024);
StringWriter stringWriter = new StringWriter(sb);
XmlTextWriter writer = new XmlTextWriter(stringWriter);
doc.WriteTo(writer);
writer.Close();
return sb.ToString();
}
這建立了新的FetchXml返回結果的下一頁,但使用當前的頁面cookie來確定哪些是需要返回下一頁。
然後,只需要調用以下內容即可獲得結果;
請仔細閱讀鏈接中的完整代碼示例,並確保明白它在做什麼。它在那裏。
等待,您可以設法執行2個RetrieveMultiple結果集(實體A + B)的聯合,以在您的方法中獲取合併的數據集。但尋呼曲奇是用於RetreiveMultiple調用本身分頁..所以你必須使用LINQ從本地合併數據集分頁.. –