Asp.net mvc 使用自定义查询时,将记录计数从服务器发送到breeze
我正在web api中执行一个自定义breeze查询,并希望在客户端获取记录的总数。如何将记录计数从服务器发送到客户端。由于它是一个自定义查询,data.inlineCount在这里不起作用,这通常与breeze查询一起使用。只需在服务器上创建一个复杂对象,将结果和inlineCount属性传递回去,以便breeze正确解释它-Asp.net mvc 使用自定义查询时,将记录计数从服务器发送到breeze,asp.net-mvc,asp.net-web-api,breeze,hottowel,Asp.net Mvc,Asp.net Web Api,Breeze,Hottowel,我正在web api中执行一个自定义breeze查询,并希望在客户端获取记录的总数。如何将记录计数从服务器发送到客户端。由于它是一个自定义查询,data.inlineCount在这里不起作用,这通常与breeze查询一起使用。只需在服务器上创建一个复杂对象,将结果和inlineCount属性传递回去,以便breeze正确解释它- return Repository.Clients.OrderByDescending(cl => cl.ID).AsQueryable().Skip(start
return Repository.Clients.OrderByDescending(cl => cl.ID).AsQueryable().Skip(startIndex).Take(pageSize);
是的,我在entity类中创建了一个Notmapped属性,但是我必须为每个我不想要的记录设置该属性的值(因为我在翻页记录时需要记录计数)。是否可以将输出参数从breeze发送到服务器,在服务器上设置该值并在客户端使用它?您没有抓住要点-不要在每个对象上设置它,将它设置到您要返回的对象上,该对象包含“results”和另一个名为“inlineCount”的属性,该属性只设置了一次。Breeze将您的“结果”解释为对象,并认为您的服务器正在返回inlineCount,并将其置于一旁,而不是在服务器上使用skip&take,我在Breeze查询中添加了这两个子句。这同样有效。
public class returnResult
{
public returnResult()
{
Results = new List<MyObject>();
}
public int InlineCount{ get; set; }
public List<MyObject> Results { get; set; }
}
return manager.executeQuery(query).then(querySucceeded);
function querySucceeded(data) {
var inlineCount = data.totalRecords;
}