Show / Hide Table of Contents

Class EvmTransactionExtensions

Extension methods for submitting Ethereum-compatible EVM transactions.

Inheritance
object
EvmTransactionExtensions
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: Hiero
Assembly: Hiero.dll
Syntax
public static class EvmTransactionExtensions

Methods

| Edit this page View Source

ExecuteEvmTransactionAsync(ConsensusClient, EvmTransactionParams, Action<IConsensusContext>?)

Submits an equivalent Ethereum transaction (native RLP encoded type 0, 1, and 2) transaction to the hedera network.

Declaration
public static Task<TransactionReceipt> ExecuteEvmTransactionAsync(this ConsensusClient client, EvmTransactionParams transactionParams, Action<IConsensusContext>? configure = null)
Parameters
Type Name Description
ConsensusClient client

The Consensus Node Client executing the EVM transaction.

EvmTransactionParams transactionParams

The ethereum formatted transaction details.

Action<IConsensusContext> configure

Optional callback method providing an opportunity to modify the execution configuration for just this method call. It is executed prior to submitting the request to the network.

Returns
Type Description
Task<TransactionReceipt>

A transaction receipt indicating success, it does not include any output parameters sent from the contract.

Examples
// Submit a native EIP-1559 / EIP-2930 / legacy Ethereum transaction
// through the HAPI Ethereum gateway. `Transaction` is the full RLP
// blob (type 0, 1, or 2), already signed. AdditionalGasAllowance
// lets the HAPI payer cover fees if the eth sender runs short.
var receipt = await client.ExecuteEvmTransactionAsync(new EvmTransactionParams
{
    Transaction = signedRlpTransaction,
    AdditionalGasAllowance = 100_000_000 // 1 HBAR backstop
});
Console.WriteLine($"EVM tx status: {receipt.Status}");
Exceptions
Type Condition
ArgumentException

If required arguments are missing or invalid.

InvalidOperationException

If required context configuration is missing.

PrecheckException

If the gateway node refused the transaction. Only a code about the transaction itself proves it did not execute; any other code leaves the outcome unknown, so settle it by its transaction id on a mirror node rather than resubmitting it (see PrecheckException).

ConsensusException

If the outcome could not be confirmed: the transaction may have executed, so settle it by its transaction id on a mirror node rather than resubmitting it.

TransactionException

If the network rejected the request as invalid or had missing data.

  • Edit this page
  • View Source
In this article
Back to top .NET Client Library for Hiero Network and Hedera Hashgraph