コード例 #1
0
ファイル: BlockData.cs プロジェクト: Rajbandi/HashProof
        public static BlockData Parse(Block block, ChainedBlock chainedBlock = null)
        {
            var blockData = new BlockData {
                Hash = block.GetHash().ToString()
            };

            if (chainedBlock != null)
            {
                blockData.Height    = chainedBlock.Height;
                blockData.ChainWork = chainedBlock.ChainWork.ToString();
            }
            blockData.IsProofOfStake  = block.IsProofOfStake();
            blockData.IsProofOfWork   = block.IsProofOfWork();
            blockData.StakeEntropyBit = block.GetStakeEntropyBit();

            //Header
            blockData.Header = BlockHeaderData.Parse(block.Header);

            //Transactions
            var transactions = new List <TransactionData>();

            foreach (var tx in block.Transactions)
            {
                transactions.Add(TransactionData.Parse(tx));
            }
            blockData.Transactions = transactions;

            blockData.Signature = block.BlockSignatur.ToString();
            return(blockData);
        }
コード例 #2
0
        public static ChainedBlockData Parse(ChainedBlock block)
        {
            var chainedBlock = new ChainedBlockData
            {
                Hash      = block.HashBlock.ToString(),
                ChainWork = block.ChainWork.ToString(),
                Height    = block.Height,
                Previous  = block.Previous.HashBlock.ToString(),
                Header    = BlockHeaderData.Parse(block.Header)
            };

            return(chainedBlock);
        }