вложенными типами, интеллисенс его отображает и отображает вложенные типы, но когда я обращаюсь ко вложенному типу, пишет ошибку, что у изначального рут типа "нет функции, поля или конструктора <вложенный тип>" (хотя опять же - он отображается в интеллисенсе
Кто-то сталкивался с таким ?
https://github.com/RedDuck-Software/SolidityProvider/tree/feature/tests вот ссылка на проект, последний код в ветке feature/tests, код провайдера находится в папке src/DesignTime, тестирую я через tests/ солюшн
Одна из проблем заключается в том, что ты определяешь методы (которые, _type = "function") с возвращаемыми типами в виде dto, которые ты не добавляешь в сборку. То есть, функции ты запровайдил, а типы аргументов и результатов не запровайдил,
На уровне идеи: ... let solidityFunctionToNetMethod (solidityFunction:Root) = let parameters = solidityFunction.inputs |> Seq.map ^fun j -> ProvidedParameter(j.name, solidityTypeToNetType j.internalType) |> Seq.toList let returnType = solidityOutputTypesToNetReturnType solidityFunction.name solidityFunction.outputs let method = ProvidedMethod(solidityFunction.name, parameters, returnType) returnType, method let providedType = ProvidedTypeDefinition(sprintf "%sContract" contractName, Some typeof<obj>) roots |> Seq.where ^fun i -> i._type = "function" |> Seq.map solidityFunctionToNetMethod |> Seq.iter ^fun (method, returnType) -> providedType.AddMember returnType providedType.AddMember method ...
Обсуждают сегодня