我有一个拥有大量文档的DocumentDB集合。其中一些是无效的。我试图根据某些条件异步检索文档。在查询documentDB时抑制异常
下面代码抛出异常时,它创立一个无效的文件,该文件satifies条件,但不能被映射到TEntity
(例如:某些字段是null
):
IDocumentQuery<TEntity> queryable = client.CreateDocumentQuery<TEntity>(documentCollectionUri)
.Where(c=>c.Name!="raju").AsDocumentQuery();
List<TEntity> resultList = new List<TEntity>();
while (queryable.HasMoreResults)
{
foreach (TEntity t in await queryable.ExecuteNextAsync<TEntity>()) //throws exception while parsing to TEntity
{
resultList.Add(t);
}
}
我可以FeedOptions参数设置为1然后把try catch在foreach
循环中,但这不是有效的方法(这么多的调用)。
任何方法来抑制异常并获取所有匹配的文档?
我认为这取决于引发异常的位置,是否有可能在迭代它们之前检测到无效文档? –