@@ -129,7 +129,7 @@ public async Task<Transaction> Prepare(string functionName, string from = null,
129129
130130 var web3 = Utils . GetWeb3 ( _sdk . Session . ChainId , _sdk . Session . Options . clientId , _sdk . Session . Options . bundleId ) ;
131131 var contract = web3 . Eth . GetContract ( this . ABI , this . Address ) ;
132- var function = contract . GetFunction ( functionName ) ;
132+ var function = Utils . GetFunctionMatchSignature ( contract , functionName , args ) ;
133133 var fromAddress = from ?? await _sdk . Wallet . GetAddress ( ) ;
134134 initialInput = function . CreateTransactionInput ( fromAddress , args ) ;
135135 }
@@ -147,7 +147,7 @@ public string Encode(string functionName, params object[] args)
147147 {
148148 var web3 = Utils . GetWeb3 ( _sdk . Session . ChainId , _sdk . Session . Options . clientId , _sdk . Session . Options . bundleId ) ;
149149 var contract = web3 . Eth . GetContract ( this . ABI , this . Address ) ;
150- var function = contract . GetFunction ( functionName ) ;
150+ var function = Utils . GetFunctionMatchSignature ( contract , functionName , args ) ;
151151 return function . GetData ( args ) ;
152152 }
153153
@@ -161,7 +161,7 @@ public List<ParameterOutput> Decode(string functionName, string encodedArgs)
161161 {
162162 var web3 = Utils . GetWeb3 ( _sdk . Session . ChainId , _sdk . Session . Options . clientId , _sdk . Session . Options . bundleId ) ;
163163 var contract = web3 . Eth . GetContract ( this . ABI , this . Address ) ;
164- var function = contract . GetFunction ( functionName ) ;
164+ var function = Utils . GetFunctionMatchSignature ( contract , functionName ) ;
165165 return function . DecodeInput ( encodedArgs ) ;
166166 }
167167
@@ -212,8 +212,8 @@ public async Task<TransactionResult> Write(string functionName, TransactionReque
212212 if ( this . ABI == null )
213213 this . ABI = await FetchAbi ( this . Address , await _sdk . Wallet . GetChainId ( ) ) ;
214214
215- var service = new Nethereum . Contracts . Contract ( null , this . ABI , this . Address ) ;
216- var function = service . GetFunction ( functionName ) ;
215+ var contract = new Nethereum . Contracts . Contract ( null , this . ABI , this . Address ) ;
216+ var function = Utils . GetFunctionMatchSignature ( contract , functionName , args ) ;
217217 var data = function . GetData ( args ) ;
218218 var input = new TransactionInput
219219 {
@@ -249,7 +249,7 @@ public async Task<T> Read<T>(string functionName, params object[] args)
249249
250250 var web3 = Utils . GetWeb3 ( _sdk . Session . ChainId , _sdk . Session . Options . clientId , _sdk . Session . Options . bundleId ) ;
251251 var contract = web3 . Eth . GetContract ( this . ABI , this . Address ) ;
252- var function = contract . GetFunction ( functionName ) ;
252+ var function = Utils . GetFunctionMatchSignature ( contract , functionName , args ) ;
253253 var result = await function . CallDecodingToDefaultAsync ( args ) ;
254254
255255 var rawResults = new List < object > ( ) ;
@@ -386,7 +386,7 @@ public async Task<T> ReadRaw<T>(string functionName, params object[] args)
386386
387387 var web3 = Utils . GetWeb3 ( _sdk . Session . ChainId , _sdk . Session . Options . clientId , _sdk . Session . Options . bundleId ) ;
388388 var contract = web3 . Eth . GetContract ( this . ABI , this . Address ) ;
389- var function = contract . GetFunction ( functionName ) ;
389+ var function = Utils . GetFunctionMatchSignature ( contract , functionName , args ) ;
390390 return await function . CallDeserializingToObjectAsync < T > ( args ) ;
391391 }
392392
0 commit comments