NBitcoinのトランザクションパートでエラーが出るpart2
問題
前回の投稿に引き続き、引っかかったところとその対応方法についてまとめます。
file: 'file:///Program.cs'severity: 'エラー'message: 'The type or namespace name 'List<>' could not be found (are you missing a using directive or an assembly reference?) [/Users/kichino/Documents/nbtc/nbtc.csproj]'at: '64,13'source: ''
問題のコードを以下に示す。
List<ICoin> receivedCoins = transactionResponse.ReceivedCoins;
foreach (var coin in receivedCoins)
{
Money amount = (Money) coin.Amount;
Console.WriteLine(amount.ToDecimal(MoneyUnit.BTC));
var paymentScript1 = coin.TxOut.ScriptPubKey;
Console.WriteLine(paymentScript1); //これはScriptPubKey
var address = paymentScript1.GetDestinationAddress(Network.Main);
Console.WriteLine(address);
Console.WriteLine();
}
対処法
前回と引き続きインポートするライブラリが正しくないためメソッドの参照がされなかったということでしょう。以下のようにインポート文を追記します。
using System;
using NBitcoin;
using QBitNinja.Client.Models;
using QBitNinja.Client;
using System.Collections.Generic;
結果
「受け取った」BTCの情報である以下3つを取得することができた。
- BTC量
- スクリプト
- 受け取りアドレス
まとめ
前回の投稿に引き続きライブラリのインポートで2回も引っかかった。このことから言えるのは初心者にはその点の理解が不足しているため説明をもう少し付け加えた方がわかりやすくなると思う。しかし総じて良い教材である。


0 件のコメント:
コメントを投稿