我使用documentStore.Conventions.DefaultQueryingConsistency = ConsistencyOptions.QueryYourWrites
我的代码中的语句从 RavenDB 查询数据并且工作正常。但是如何为所有查询设置全局超时(如下面的查询所示)。
RavenQueryStatistics stats;
var results = session.Query<Product>()
.Statistics(out stats)
.Where(x => x.Price > 10)
.Customize(x => x.WaitForNonStaleResults(TimeSpan.FromSeconds(5)))
.ToArray();
最佳答案
public class NonStaleQueryListener(TimeSpan timeout) : IDocumentQueryListener
{
public void BeforeQueryExecuted(IDocumentQueryCustomization customization)
{
customization.WaitForNonStaleResultsAsOfLastWrite(timeout);
}
}
并像这样注册:
TimeSpan timeout = TimeSpan.FromSeconds(5);
documentStore.RegisterListener(new NonStaleQueryListener(timeout));
关于ravendb - ConsistencyOptions.QueryYourWrites 超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19143506/