C# Dynamics CRM-如何在.Net中处理odata.nextlink响应

C# Dynamics CRM-如何在.Net中处理odata.nextlink响应,c#,rest,odata,dynamics-crm,C#,Rest,Odata,Dynamics Crm,我有以下代码从Dynamics CRM(使用OData查询)检索事务: public异步任务GetTransactions() { var tableName=Transaccion.CrmTableName; var-request=new-resrequest($“/api/data/v8.0/{tableName}”); request.AddHeader(“首选”,“odata.maxpagesize=500”); var responseData=wait client.Execute

我有以下代码从Dynamics CRM(使用OData查询)检索事务:

public异步任务GetTransactions()
{
var tableName=Transaccion.CrmTableName;
var-request=new-resrequest($“/api/data/v8.0/{tableName}”);
request.AddHeader(“首选”,“odata.maxpagesize=500”);
var responseData=wait client.ExecuteGetTaskAsync(请求);
var交易=responseData.Data.Value;
while(responseData.Data.NextLink!=null)
{
请求=新的重新请求(responseData.Data.NextLink);
request.AddHeader(“首选”,“odata.maxpagesize=500”);
responseData=wait client.ExecuteGetTaskAsync(请求);
transactions.AddRange(responseData.Data.Value);
}
退货交易;
}
执行第一个“ExecuteGetTaskAsync”后,我将获得一个NextLink属性,该属性指向我需要检索的下一组实体。但是,当我尝试执行下一个RestRequest时,我没有得到JSON作为响应,而是得到一个与重定向相对应的Html页面,在这里我可以读取错误消息“”

这很奇怪,因为Restclient经过了正确的身份验证,所以第一次调用可以正确进行


发生什么事了?如何使用.Net中的Dynamics CRM进行分页并使用NextLink?

odada NextLink返回下一个请求的完整URL,因此您需要对其进行解析,以仅获取/api/**部分。

在我的例子中,@odata.NextLink中的URL有错误

情况如何:

http://[Organization URI]/api/data/v8.2/[entity]/(68e95f08-d372-e711-966b-defe0719ce9e)/[relation entity]?$select=ne_name
这不起作用,但这确实起了作用:

http://[Organization URI]/api/data/v8.2/[entity](68e95f08-d372-e711-966b-defe0719ce9e)/[relation entity]?$select=ne_name
[实体]和(id)之间没有“/”

http://[Organization URI]/api/data/v8.2/[entity](68e95f08-d372-e711-966b-defe0719ce9e)/[relation entity]?$select=ne_name