private String Post(Transaction transaction) { String result = ""; try { Uri currentUri = new Uri(Host + transaction.Endpoint); WebClient currentClient = GetClientWithHeaders(); string json = currentClient.UploadString(currentUri, serializer.Serialize(transaction.Data)); Transaction.JsonTransaction jsonTransaction = serializer.Deserialize <Transaction.JsonTransaction>(json); return(jsonTransaction.Id); } catch (WebException e) { if (e.Status == WebExceptionStatus.ProtocolError) { var resp = new StreamReader(e.Response.GetResponseStream()).ReadToEnd(); throw new IOException(resp); } } return(result); }
private string Request(Transaction transaction, bool isCancel) { try { string jsonTransaction = serializer.Serialize(transaction.Data); Uri currentUri = new Uri(Host + transaction.Endpoint); WebClient currentClient = GetClientWithHeaders(); var json = currentClient.UploadString(currentUri, jsonTransaction); Transaction.JsonTransactionWithStatus result = serializer.Deserialize <Transaction.JsonTransactionWithStatus>(json); if (!isCancel) { Transaction.JsonTransaction message = result.Message; return(message.Id); } return(""); } catch (WebException e) { var resp = new StreamReader(e.Response.GetResponseStream()).ReadToEnd(); Transaction.JsonTransactionError error = serializer.Deserialize <Transaction.JsonTransactionError>(resp); throw new IOException(error.Message.ToString()); } }