// bu fonksiyonda kullanılabilir. bunun ile xml deki elementlere tek tek ulaşabilirsiniz. public T PostXML <T>(String url, VPOSRequest request) { HttpClient httpClient = new HttpClient(); var xml = XmlBuilder.SerializeToXMLString(request); HttpResponseMessage httpResponseMessage = httpClient.PostAsync(url, xml).Result; var result = httpResponseMessage.Content.ReadAsStringAsync().Result; return(XmlBuilder.DeserializeObject <T>(result)); }
public static string ComputeHash(VPOSRequest request, Settings settings) { SHA1 sha = new SHA1CryptoServiceProvider(); var temp = settings.Password + request.Terminal.ID.PadLeft(9, '0'); var hashedPassword = sha.ComputeHash(Encoding.UTF8.GetBytes(temp)); StringBuilder sb = new StringBuilder(); for (int i = 0; i < hashedPassword.Length; i++) { sb.Append(hashedPassword[i].ToString("X2")); } temp = request.Order.OrderID + request.Terminal.ID + request.Card.Number + request.Transaction.Amount + sb.ToString(); var hashData = sha.ComputeHash(Encoding.UTF8.GetBytes(temp)); sb = new StringBuilder(); for (int i = 0; i < hashData.Length; i++) { sb.Append(hashData[i].ToString("X2")); } return(sb.ToString()); }