public void TableGenericQueryableWithContinuationAPM() { TableQuery <DynamicTableEntity> query = (from ent in currentTable.CreateQuery <DynamicTableEntity>() select ent).AsTableQuery(); OperationContext opContext = new OperationContext(); TableQuerySegment <DynamicTableEntity> seg = null; using (ManualResetEvent evt = new ManualResetEvent(false)) { IAsyncResult asyncRes = null; query.BeginExecuteSegmented(null, null, opContext, (res) => { asyncRes = res; evt.Set(); }, null); evt.WaitOne(); seg = query.EndExecuteSegmented(asyncRes); } int count = 0; foreach (DynamicTableEntity ent in seg) { Assert.IsTrue(ent.PartitionKey.StartsWith("tables_batch")); Assert.AreEqual(ent.Properties.Count, 4); count++; } // Second segment Assert.IsNotNull(seg.ContinuationToken); using (ManualResetEvent evt = new ManualResetEvent(false)) { IAsyncResult asyncRes = null; query.BeginExecuteSegmented(seg.ContinuationToken, null, opContext, (res) => { asyncRes = res; evt.Set(); }, null); evt.WaitOne(); seg = query.EndExecuteSegmented(asyncRes); } foreach (DynamicTableEntity ent in seg) { Assert.IsTrue(ent.PartitionKey.StartsWith("tables_batch")); Assert.AreEqual(ent.Properties.Count, 4); count++; } Assert.AreEqual(1500, count); TestHelper.AssertNAttempts(opContext, 2); }
public void TableGenericQueryableBasicAPM() { TableQuery <DynamicTableEntity> query = (from ent in currentTable.CreateQuery <DynamicTableEntity>() where ent.PartitionKey == "tables_batch_1" select ent).AsTableQuery(); TableQuerySegment <DynamicTableEntity> seg = null; using (ManualResetEvent evt = new ManualResetEvent(false)) { IAsyncResult asyncRes = null; query.BeginExecuteSegmented(null, (res) => { asyncRes = res; evt.Set(); }, null); evt.WaitOne(); seg = query.EndExecuteSegmented(asyncRes); } foreach (DynamicTableEntity ent in seg) { Assert.AreEqual(ent.PartitionKey, "tables_batch_1"); Assert.AreEqual(ent.Properties.Count, 4); } }