You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nethereum调用SendTransactionAsync报eth_sendRawTransaction交易类型不支持

解决方案

错误根因

该报错核心是Nethereum 4.0及以上版本默认使用EIP-1559格式的类型2交易,而BSC主网/测试网目前仅支持Legacy类型的0号交易,节点收到不兼容的交易结构后就会返回transaction type not supported: eth_sendRawTransaction异常。

修复步骤

步骤1:全局配置Web3使用Legacy交易

在初始化Web3实例后新增一行配置,全局生效,不需要逐个修改交易参数:

var web3 = new Web3(account, client);
// 新增:强制所有交易使用Legacy格式,适配BSC网络
web3.TransactionManager.UseLegacyAsDefault = true;

步骤2:检查基础参数正确性

  • 你当前使用的是BSC测试网RPC,对应chainId必须为97,如果是BSC主网则为56,传入Account构造函数的chainId要和网络匹配
  • 建议手动指定合理的GasPrice避免打包失败,BSC测试网建议设置为5Gwei及以上,可直接在MintNftFunction实例中配置:
var mintMsg = new MintNftFunction
{
    FromAddress = account.Address,
    Recipient = "REDACTED",
    MetadataHash = "TestMetaDataHash",
    MediaHash = "TestMediaHash",
    SeasonId = 1,
    GasPrice = Web3.Convert.ToWei(5, Nethereum.Util.UnitConversion.EthUnit.Gwei),
    // 若遇到Gas不足报错可手动指定GasLimit,NFT mint场景一般200000-300000即可
    // GasLimit = 300000
};

验证执行

配置完成后直接使用你原有的尝试1代码即可,不需要修改其他逻辑,该方案完全适配你调用合约修改链上存储的需求,不需要额外处理原生币转账逻辑:

// 直接调用CodeGen生成的服务方法即可,自动等待交易上链确认
var txReceipt = await mtSvc.MintNftRequestAndWaitForReceiptAsync(mintMsg);

内容的提问来源于stack exchange,提问作者Crimson Salamander

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 13:51:02