Попытка выполнить транзакцию в сети Tron для отправки usdt с использованием пакета C# и Torrent Nuget.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Попытка выполнить транзакцию в сети Tron для отправки usdt с использованием пакета C# и Torrent Nuget.

Сообщение Anonymous »


Я использовал пакеты Nudget TronNet версии 0.2.0
но всегда возникала какая-нибудь ошибка. Поэтому я собрал метод на основе документации и некоторых других примеров.
Я пытался просто передать активы usdt с помощью сети tron, похоже, пакеты не работают. Вот один из многих перенести пробную версию

Код: Выделить всё

public static async Task TransferTrc20Token(string tokenContractAddress, string walletAddress,
string privateKey, string toAddress, decimal amount)
{
// Create the transfer contract
var transferContract = new TransferContract
{
OwnerAddress = ByteString.CopyFrom(Base58Encoder.DecodeFromBase58Check(walletAddress)),
ToAddress = ByteString.CopyFrom(Base58Encoder.DecodeFromBase58Check(toAddress)),
Amount = (long)(amount * 1000000m)
};

// Create the transaction
var transaction = new Transaction
{
RawData = new Transaction.Types.raw
{
Contract = { new Transaction.Types.Contract
{
Type = Transaction.Types.Contract.Types.ContractType.TransferContract,
Parameter = Google.Protobuf.WellKnownTypes.Any.Pack(transferContract)
}},
Timestamp = DateTimeOffset.Now.ToUnixTimeMilliseconds(),
Expiration = DateTimeOffset.Now.AddHours(1).ToUnixTimeMilliseconds()
}
};

// Sign the transaction
transaction = SignTransaction(transaction, privateKey);

// Serialize the transaction
var serializedTransaction = transaction.ToByteArray();

// Convert the serialized transaction to hexadecimal string
var transactionHex = BitConverter.ToString(serializedTransaction).Replace("-", "");

// Create the REST client
var client = new RestClient("https://api.trongrid.io/wallet/easytransfer");
var request = new RestRequest();
request.Method = Method.Post;
request.AddHeader("Accept", "application/json");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{\"transaction\":\"" + transactionHex + "\"}", ParameterType.RequestBody);

// Send the request
var response = await client.ExecuteAsync(request);

if (response.IsSuccessful)
{
// Handle successful response
Console.WriteLine("Transfer successful");
}
else
{
// Handle error response
Console.WriteLine("Transfer failed: " + response.ErrorMessage);
}
}

private static Transaction SignTransaction(Transaction transaction, string privateKey)
{
byte[] privateKeyBytes;
if (privateKey.Length == 64)
{
privateKeyBytes = StringToByteArray(privateKey);
}
else
{
// Decode private key from Base58Check format
privateKeyBytes = TronNet.Crypto.Base58Encoder.DecodeFromBase58Check(privateKey);
}

var ecKey = new ECKey(privateKeyBytes, true);
var rawdata = transaction.RawData.ToByteArray();
var hash = rawdata.ToSHA256Hash();
var signature = ecKey.Sign(hash).ToByteArray();

transaction.Signature.Add(ByteString.CopyFrom(signature));

return transaction;
}

private static byte[] StringToByteArray(string hex)
{
int length = hex.Length;
byte[] bytes = new byte[length / 2];
for (int i = 0; i < length; i += 2)
{
bytes[i / 2] = Convert.ToByte(hex.Substring(i, 2), 16);
}
return bytes;
}
To find what is problem? and process transaction in tron network usdt c#,


Источник: https://stackoverflow.com/questions/763 ... -and-tronn
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как я могу отправить USDT в сети Solana через Solanaj
    Anonymous » » в форуме JAVA
    0 Ответы
    34 Просмотры
    Последнее сообщение Anonymous
  • Как поменять токены в сети tron ​​с помощью Python?
    Anonymous » » в форуме Python
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous
  • Загрузите файл Magnetic или .torrent прямо по гиперссылке.
    Anonymous » » в форуме Php
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • Загрузите файл Magnetic или .torrent прямо по гиперссылке.
    Anonymous » » в форуме Jquery
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Мне нужна автоматическая проверка и выпуск USDT в PHP [закрыто]
    Anonymous » » в форуме Php
    0 Ответы
    24 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»