使用 NBitcoin 的 NodesGroup 请求完整块
Request full blocks using NBitcoin's NodesGroup
我正在使用 https://github.com/MetacoSA/NBitcoin 一个简单的 C# 应用程序,它只下载比特币区块链。
我已经实现的是通过 NodesGroup
:
下载区块头
var parameters = new NodeConnectionParameters();
parameters.TemplateBehaviors.Add(new ChainBehavior());
var group = new NodesGroup(Network.Main, parameters, new NodeRequirement()
{
RequiredServices = NodeServices.Network
});
group.Connect();
//wait some time
var chain = parameters.TemplateBehaviors.Find<ChainBehavior>().Chain;
我发现下载完整区块(带交易)的唯一方法是使用单个 Node
:
var node = new Node(/*whatever*/)
var blocks = node.GetBlocks(/*hash of the last block I want*/)
所以这是我的问题:有没有一种方法可以直接从 NodesGroup
中的连接节点并行下载完整的区块(带有交易),就像我对区块头所做的那样?
提前致谢!
我刚刚得知,NBitcoin 目前不支持此功能。我将不得不坚持单节点解决方案:
var node = new Node(/*whatever*/)
var blocks = node.GetBlocks(/*hash of the last block I want*/)
我正在使用 https://github.com/MetacoSA/NBitcoin 一个简单的 C# 应用程序,它只下载比特币区块链。
我已经实现的是通过 NodesGroup
:
var parameters = new NodeConnectionParameters();
parameters.TemplateBehaviors.Add(new ChainBehavior());
var group = new NodesGroup(Network.Main, parameters, new NodeRequirement()
{
RequiredServices = NodeServices.Network
});
group.Connect();
//wait some time
var chain = parameters.TemplateBehaviors.Find<ChainBehavior>().Chain;
我发现下载完整区块(带交易)的唯一方法是使用单个 Node
:
var node = new Node(/*whatever*/)
var blocks = node.GetBlocks(/*hash of the last block I want*/)
所以这是我的问题:有没有一种方法可以直接从 NodesGroup
中的连接节点并行下载完整的区块(带有交易),就像我对区块头所做的那样?
提前致谢!
我刚刚得知,NBitcoin 目前不支持此功能。我将不得不坚持单节点解决方案:
var node = new Node(/*whatever*/)
var blocks = node.GetBlocks(/*hash of the last block I want*/)