Solidity契約は、他の契約のマッピングにアクセスします

堅固な契約が他の契約のマッピングにアクセスする方法

より多くのブロックチェーンテクノロジーとアプリケーション分類:

ブロックチェーンアプリケーションブロックチェーン    開発

イーサネットスクエア|ファブリック| BCOS |暗号化|コンセンサスアルゴリズム|ビットコインその他のチェーン

トークンエコノミー従来の財務シナリオ|分散型ファイナンス|偽造防止トレーサビリティ|データ共有|信頼できる預金

エラーコード

訪問した契約

contract BagUserAdmin {
    mapping(bytes32 => RecordBean) bagRecordOf;
}

アクセス契約

contract UserGiveLikes{
 
    BagUserAdmin internal bagUserAdmin;
	constructor(address BagUserAdminAddress){
        bagUserAdmin = BagUserAdmin(BagUserAdminAddress);
    }
	// 直接去访问该合约对象的mapping
	bagRecordBean = bagUserAdmin.bagRecordOf[TypeConvertUtil.stringToBytes32(_forBagid)];
 
}

正しく引用:

contract BagUserAdmin is TableDefTools{
 
    mapping(bytes32 => RecordBean) bagRecordOf;
	function getBagValues(string _bagid) public view returns(string []){
        return bagRecordOf[TypeConvertUtil.stringToBytes32(_bagid)].values;
    }
}
contract UserGiveLikes{
 
    BagUserAdmin internal bagUserAdmin;
	constructor(address BagUserAdminAddress){
        bagUserAdmin = BagUserAdmin(BagUserAdminAddress);
    }
	// 通过getter方法去访问该合约对象的mapping
	bagRecordValues = bagUserAdmin.getBagValues(_forBagid);
 
}

元のリンク:Solidity契約は他の契約のマッピングにアクセスします 

おすすめ

転載: blog.csdn.net/JonasErosonAtsea/article/details/109236545