在C#中增加Neo4JClient的HttpClient超时

时间:2015-01-23 21:49:55

标签: c# neo4j httpclient neo4jclient

所以我正在运行一个相当大的查询,它通过shell运行良好,但是在使用Readify的GraphClient抛出“TaskCancelledException”时会超时。

此行为是预期的,因为在使用shell时,查询大约需要4分钟,而neo4jclient使用的默认超时为100秒。

我的问题是:如何增加此超时?

我发现这篇文章建议使用IHttpClient来增加超时但帖子已经有好几年了,我不知道如何实现这个建议。 http://hg.readify.net/neo4jclient/issue/70/taskcancelledexception

(PS:正在运行的查询是:

“match p = shortestPath((a:Domain {id:”Someid“})) - [:IP] - (b:Domain))  返回节点(p)“

在几十万个节点的图表中。

这不是关于优化我的查询以更快运行的问题(虽然我对建议持开放态度,但是在深度上设置上限无助于lol),我必须增加此超时值!< / p>

谢谢

1 个答案:

答案 0 :(得分:1)

显然这已经很晚了,但Neo4jClient已经更新,允许你这样做,你可以像这样延长超时时间:

var client = new HttpClient { Timeout = TimeSpan.FromMinutes(5) };
GraphClient gc = new GraphClient(new Uri("http://localhost:7474/db/data"), new HttpClientWrapper("user", "pass", client));

如果这么倾向,你可以把它全部打成一行:)