BitCoinClient.Transaction.Load C# (CSharp) Method

Load() public method

public Load ( byte data ) : void
data byte
return void
        public void Load(byte[] data)
        {
            mInputs = new List<TransactionInput>();
            mOutputs = new List<TransactionOutput>();

            MemoryStream stream = new MemoryStream(data);
            BinaryReader br = new BinaryReader(stream);

            mVersion = br.ReadUInt32();
            ulong inputs = Program.ReadVarInt(br);
            for (ulong i = 0; i < inputs; i++)
            {
                TransactionInput input = new TransactionInput(br);
                mInputs.Add(input);
            }

            ulong outputs = Program.ReadVarInt(br);
            for (ulong i = 0; i < outputs; i++)
            {
                TransactionOutput output = new TransactionOutput(br);
                mOutputs.Add(output);
            }

            mLockTime = br.ReadUInt32();

            br.Close();
            Status = DataStatus.Loaded;
        }

Usage Example

        public void LoadTransaction(byte[] data)
        {
            byte[] hash    = Program.GenerateHash(data);
            string hashStr = Program.HashToString(hash);

            if (mTransactions.ContainsKey(hashStr))
            {
                Transaction t = mTransactions[hashStr];
                t.Load(data);
            }
            else
            {
                Console.WriteLine("Unknown transaction");
            }
        }