我正在尝试根据我的范围过滤器删除 Azure 表实体。我在这里尝试的只是删除较旧的记录。
我能够根据我的范围搜索条件获得正确的实体。
TableQuery<Tables> rangeQuery = new TableQuery<Tables>().Where(
TableQuery.CombineFilters(
TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, "DeleteTablename"),
TableOperators.And,
TableQuery.GenerateFilterConditionForDate("StartedOn", QueryComparisons.LessThan, DateTime.Now.Add(new TimeSpan(0, -60, 0)))));
foreach(Tables rows in logTable.ExecuteQuery(rangeQuery)) {
log.Info($"{rows.PartitionKey}, {rows.RowKey}\t{rows.FinishedOn}\t{rows.Timestamp}");
}
//till here it works
TableResult retrievedResult = logTable.ExecuteQuery(rangeQuery);
Tables deleteEntity = (Tables)retrievedResult.Result;
收到以下错误
无法将类型“System.Collections.Generic.IEnumerable”隐式转换为“Microsoft.WindowsAzure.Storage.Table.TableResult”timertest
无法将类型“Microsoft.WindowsAzure.Storage.Table.TableResult”转换为“timertest.Tables”timertest
笔记:
timertest
是我的namespace
Tables
是一个类,它扩展TableEntity
类以在 azure 表中添加我的自定义属性。
根据范围删除实体的任何想法?