コード例 #1
0
        public ContractValidationResponse ValidateContract(RequestContractValidationModel model)
        {
            var response = new ContractValidationResponse();

            using (var client = GetClientByModel(model))
            {
                var result = client.SmartContractCompile(model.SourceString);
                if (result.ByteCodeObjects != null)
                {
                    response.Deploy = new ContractDeploy();
                }
                foreach (var a in result.ByteCodeObjects)
                {
                    var bc = new BCObject();
                    bc.Name     = a.Name;
                    bc.ByteCode = a.ByteCode;

                    response.Deploy.ByteCodeObjects.Add(bc);
                }
                response.Deploy.SourceCode = model.SourceString;
                response.TokenStandard     = result.TokenStandard;
            }

            return(response);
        }
コード例 #2
0
        public ActionResult <ContractValidationResponse> ContractValidation(RequestContractValidationModel model)
        {
            InitAuthKey(model);

            ContractValidationResponse res;

            try
            {
                res         = ServiceProvider.GetService <MonitorService>().ValidateContract(model);
                res.Success = true;
            }
            catch (Exception ex)
            {
                res         = new ContractValidationResponse();
                res.Success = false;
                res.Message = ex.Message;
            }

            return(Ok(res));
        }