1

I have a contract deployed on Goerli test network, given the code below, I never see any event changes when I transfer tokens.

 public static async Task PollForEvents(JObject pixelBlock)
        {
            try
            {
                var web3 = new Web3(Env.INFURA_GOERLI);
                string abi = pixelBlock["abi"].ToString();
                var contract = web3.Eth.GetContract(abi, Env.PIXEL_BLOCK_GOERLI);
            Event transferEvent = contract.GetEvent("Transfer");
            Nethereum.Hex.HexTypes.HexBigInteger transferEventFilter = await transferEvent.CreateFilterAsync();

            Event<TransferEventDTO> transferEventHandler = web3.Eth.GetEvent<TransferEventDTO>(Env.PIXEL_BLOCK_GOERLI);
            NewFilterInput filterAllTransferEventsForContract = transferEventHandler.CreateFilterInput();

            while (true)
            {
                List<EventLog<TransferEventDTO>> getAllChanges0 = await transferEvent.GetAllChangesAsync<TransferEventDTO>(transferEventFilter);
                List<EventLog<TransferEventDTO>> getAllChanges1 = await transferEventHandler.GetAllChangesAsync(filterAllTransferEventsForContract);
                List<EventLog<TransferEventDTO>> getAllChanges2 = await transferEvent.GetFilterChangesAsync<TransferEventDTO>(transferEventFilter);

                if (getAllChanges0.Count > 0 || getAllChanges1.Count > 0 || getAllChanges2.Count > 0)
                {
                    Console.WriteLine(getAllChanges0.Count);
                    Console.WriteLine(getAllChanges1.Count);
                    Console.WriteLine(getAllChanges2.Count);
                }

                await Task.Delay(5000);
            }
        }
        catch (Exception e)
        {
            Console.WriteLine(e);
        }
    }

enter image description here

0 Answers0