ページングCookiesを使用するように思えます。例と詳細についてはリンクを参照してください。
https://msdn.microsoft.com/en-us/library/gg328046.aspx
編集
あなたは、ループの各反復のためのページングクッキーを再作成するが、既存のページングクッキーの上に、それをベースにする必要があります。
以下のコードは、私がリンクしている例です。
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、ページングクッキー、現在のページ、および1ページあたりの項目数が必要です。これは、順番に次のように呼び出します:
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を構築、しかし返却する必要が次のページであるかを決定するために、現在のページングクッキーを使用しています。
次に、結果を得るために次のように呼び出すだけです。
リンクの完全なコードサンプルを読み、その内容を理解していることを確認してください。それはすべてそこにある。
待機中、2つのRetrieveMultiple結果セット(エンティティA + B)の和集合を使用して、メソッド内でマージされたデータセットを取得できます。ただし、ページングCookieはRetreiveMultiple呼び出し自体のページング用です。LINQを使用してローカルマージしたデータセットでページ番号を設定する必要があります。 –