I have function in smart contract:
struct DrugBox {
uint256 weight; // weight is accumulated by delegation
uint256 creationDate;
address producer;
string drugName;
uint256 id;
}
function getAllBoxes() public view returns (DrugBox[] memory box1) {
return boxes;
}
And I have code in C#. I want to return list of drug boxes from smart contract
[FunctionOutput]
public class DrugBoxesDTO
{
[Parameter("tuple[]", "box1", 1)]
public List<DrugBoxDTO> Boxes { get; set; }
}
public class DrugBoxDTO
{
public string DrugName { get; set; }
public string Producer { get; set; }
public int Weight { get; set; }
public int Id { get; set; }
}
Task<DrugBoxesDTO> qwe = drugStoreContract.GetFunction("getAllBoxes").CallAsync<DrugBoxesDTO>();
But I get an error:
System.AggregateException
HResult=0x80131500
Message=One or more errors occurred. (Arrays containing Dynamic Types are not supported)
Inner Exception 1:
NotSupportedException: Arrays containing Dynamic Types are not supported
How to deserialize list of object correctly?