与Azure SDK 1.7
不同,tableClient的.excuteQuery是否自动处理延续令牌CloudTable tableReference = tableClient.GetTableReference(“XYYZ”);
tableReference.ExecuteQuery()
tableReference.ExecuteQuery<TResult>
tableReference.ExecuteQuery<TElement,TResult>
以上方法ExecuteQuery是否会在Azure SDK 2.4中自动处理Continuation令牌,在以前的版本即1.7 SDK中,如果我们忘记调用IQuerable的.execute方法,则Continuation令牌有可能无法返回到客户端(尤其是查询多个分区的情况,其中某些分区可能没有数据)。当前版本的Azure SDK 2.4中是否也出现相同的行为。我们应该显式调用.execute()
在我为每个或toList调用之前,不会对服务器进行调用。如果在服务器端没有正确处理ContinationToken,是否有办法强制向客户端发送延续令牌?
答案 0 :(得分:1)
ExecuteQuery返回的IEnumerable对象是一个惰性枚举器,因此在枚举之前实际上不会发出请求。这就是为什么foreach或ToList使它执行查询并处理延续令牌的原因。因此,简而言之,您只需要完成结果。